Open Reality Reference Guide
FBDeviceCameraInstrument Class Reference

Instrument for a camera device. More...

#include <fbtracker.h>

Inheritance diagram for FBDeviceCameraInstrument:

Public Member Functions

 FBDeviceCameraInstrument (FBDevice *pDevice)
 Constructor. More...
 
virtual bool LoadLensTables (const char *pFilename)
 Load the lens lookup tables. More...
 
virtual void ProcessLensData (FBDeviceCameraPacket *pDataPacket)
 Process the lens table data for this data packet. More...
 
virtual bool InstrumentWriteData (FBEvaluateInfo *pEvaluateInfo) override
 Write data to instrument's connectors. More...
 
virtual void InstrumentRecordFrame (FBTime pRecordTime, FBDeviceNotifyInfo &pNotifyInfo) override
 Record the data to the function curves for the instrument. More...
 
virtual bool FbxStore (FBFbxObject *pFbxObject, kFbxObjectStore pStoreWhat) override
 Storage/Retrieval of information into the FBX file format. More...
 
virtual bool FbxRetrieve (FBFbxObject *pFbxObject, kFbxObjectStore pStoreWhat) override
 
- Public Member Functions inherited from FBDeviceInstrument
 FBDeviceInstrument (FBDevice *pDevice)
 Constructor. More...
 
- Public Member Functions inherited from FBComponent
 FBComponent (HIObject pObject)
 Constructor. More...
 
virtual ~FBComponent ()
 Destructor. More...
 
virtual bool FBCreate ()
 Open Reality Creation function. More...
 
virtual void FBDestroy ()
 Open Reality destruction function. More...
 
virtual void FBDelete () override
 Open Reality deletion function. More...
 
virtual bool SetHIObject (HIObject pObject, bool pSDKComponent) override
 Assign component to an internal pointer. More...
 
virtual int PropertyAdd (FBProperty *pProperty)
 Add a property to the component's property manager. More...
 
bool PropertyAddReferenceProperty (FBProperty *pReferenceProperty)
 Add a reference property to the component's property manager. More...
 
void PropertyRemove (FBProperty *pProperty)
 Remove a Property from the component's Property manager. More...
 
void PropertyGetModifiedList (FBArrayTemplate< FBProperty * > &pPropList, FBPlugModificationFlag pModificationFlags)
 Get list of properties which have been modified since last loading. More...
 
FBPropertyPropertyCreate (const char *pName, FBPropertyType pType, const char *pDataType, bool pAnimatable, bool pIsUser=false, FBProperty *pReferenceSource=NULL)
 Create user or dynamic property. More...
 
FBObjectFlag GetObjectFlags ()
 Get all Object Flags (concatenated). More...
 
void SetObjectFlags (FBObjectFlag pFlags)
 SetObjectFlags. More...
 
bool HasObjectFlags (FBObjectFlag pFlags)
 Check whether a specific object flag is enabled. More...
 
void EnableObjectFlags (FBObjectFlag pFlags)
 Enable a specific Object Flags. More...
 
void DisableObjectFlags (FBObjectFlag pFlags)
 Disable a specific Object Flags. More...
 
void SetObjectStatus (FBObjectStatus pStatus, bool pValue)
 Enable/Disable a specific Object Status. More...
 
bool GetObjectStatus (FBObjectStatus pStatus)
 Check to see if an object status is enabled. More...
 
bool ProcessNamespaceHierarchy (FBNamespaceAction pNamespaceAction, const char *pNamespaceName, const char *pReplaceTo=NULL, bool pAddRight=true)
 ProcessNamespaceHierarchy. More...
 
bool ProcessObjectNamespace (FBNamespaceAction pNamespaceAction, const char *pNamespaceName, const char *pReplaceTo=NULL, bool pAddRight=true)
 ProcessObjectNamespace. More...
 
virtual const char * ClassName () override
 Get the class name. More...
 
virtual bool UseCustomPropertyViewSet () const
 Use the custom property viewSet or not. More...
 
const char * GetFullName (void)
 Get the full name. More...
 
void SetOwnerNamespace (FBNamespace *pOwnerNSObj)
 Set the owner Namespace object. More...
 
FBNamespaceGetOwnerNamespace (void)
 Get the owner Namespace object. More...
 
FBFileReferenceGetOwnerFileReference (void)
 Get the owner FileReference object. More...
 
void HardSelect ()
 HardSelect. More...
 
virtual bool Is (int pTypeId) override
 Returns true if object is of type TypeId. More...
 
virtual int GetTypeId () override
 GetTypeId( int pTypeId ) More...
 
- Public Member Functions inherited from FBWrapperHolder
FBScriptWrapperGetWrapper ()
 Return the wrapper interface of this FBObject. More...
 
void AddWrapper (FBScriptWrapper *)
 
void RemoveWrapper (FBScriptWrapper *)
 

Public Attributes

FBPropertyDeviceCameraPacket Packet
 Property(RW): Used as a buffer to contain the current state of the instrument, use to put data in connector. More...
 
FBPropertyDeviceCameraPacket RecordPacket
 Property(RW): Used as a buffer to contain the record state of the instrument, use to create the keys when recording. More...
 
FBPropertyBool LensTableLoaded
 Property(R-): Has the lens table been loaded? More...
 
FBPropertyString LensCalibrationFilename
 Property(R-): Lens calibration filename. More...
 
FBPropertyBool ManualFovMode
 Property(RW): In manual mode (not using encoder values to control zoom)? More...
 
FBPropertyDouble ManualFovX
 Property(RW): Manual field of view X value. More...
 
FBPropertyDouble ManualFovY
 Property(RW): Manual field of view Y value. More...
 
FBPropertyBool ManualCenterMode
 Property(RW): Manually adjust the optical center? More...
 
FBPropertyDouble ManualCenterX
 Property(RW): Manual optical center X coordinate. More...
 
FBPropertyDouble ManualCenterY
 Property(RW): Manual optical center Y coordinate. More...
 
FBPropertyBool LensFovInDegrees
 Property(RW): Is FOV in table in degrees (false) More...
 
FBPropertyBool InvertZoom
 Property(RW): Invert the zoom encoder values? More...
 
FBPropertyBool InvertFocus
 Property(RW): Invert the focus encoder values? More...
 
FBPropertyDouble ZoomMultiplier
 Property(RW): Filmback multiplier. More...
 
FBPropertyDouble NodalMultiplier
 Property(RW): Multiplier for nodal offset. More...
 
FBPropertyVector3d TranslationOffset
 Property(RW): Translation offset; More...
 
FBPropertyVector3d RotationOffset
 Property(RW): Rotation offset. More...
 
FBPropertyDouble AspectRatio
 Property(RW): Aspect ratio for calculating the Field of View X value. More...
 
- Public Attributes inherited from FBDeviceInstrument
FBPropertyDevice Device
 Read Write Property: Handle to owner device. More...
 
FBPropertyBool Active
 Read Write Property: Is instrument active? More...
 
FBPropertyModelTemplate ModelTemplate
 Read Write Property: Model template to build instruments' structure. More...
 
- Public Attributes inherited from FBComponent
FBPropertyManager PropertyList
 Read Only Property: Manages all of the properties for the component. More...
 
FBPropertyListComponent Components
 List: List of components. More...
 
FBPropertyListComponent Parents
 List: Parents. More...
 
FBPropertyBool Selected
 Read Write Property: Selected property. More...
 
FBPropertyString Name
 Read Write Property: Unique name of object. More...
 
FBPropertyString LongName
 Read Write Property: Name and namespace for object.
More...
 
FBPropertyFolder Folder
 Read Write Property: The folder that contain this component. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from FBComponent
static int GetInternalClassId ()
 
static void FBComponentSetName (FBComponent *pObject, const char *pName)
 
static const char * FBComponentGetName (FBComponent *pObject)
 
static void FBComponentSetLongName (FBComponent *pObject, const char *pName)
 
static const char * FBComponentGetLongName (FBComponent *pObject)
 
- Static Public Attributes inherited from FBComponent
static int TypeInfo
 Contains the Type information of the object. More...
 
- Protected Member Functions inherited from FBPlug
bool IsSDKComponent ()
 Return whether or not item is an SDK component. More...
 
bool ConnectSrc (FBPlug *pSrc, FBConnectionType pConnectionType=kFBConnectionTypeNone)
 Add a source connection. More...
 
bool ConnectDst (FBPlug *pDst, FBConnectionType pConnectionType=kFBConnectionTypeNone)
 Add a destination connection. More...
 
bool ConnectSrcAt (int pDst_SrcIndex, FBPlug *pSrc, FBConnectionType pConnectionType=kFBConnectionTypeNone)
 Add a source connection. More...
 
bool ConnectDstAt (int pSrc_DstIndex, FBPlug *pDst, FBConnectionType pConnectionType=kFBConnectionTypeNone)
 Add a destination connection. More...
 
bool DisconnectDst (FBPlug *pDst)
 Remove a destination connection. More...
 
bool DisconnectSrc (FBPlug *pSrc)
 Remove a source connection. More...
 
void DisconnectAllSrc ()
 Remove all source connections. More...
 
void DisconnectAllDst ()
 Remove all destination connections. More...
 
bool DisconnectDstAt (int pIndex)
 Remove a destination connection at a specified index. More...
 
bool DisconnectSrcAt (int pIndex)
 Remove a source connection at a specified index. More...
 
bool ReplaceDstAt (int pIndex, FBPlug *pDst)
 Replace a destination connection at a specified index. More...
 
bool ReplaceSrcAt (int pIndex, FBPlug *pSrc)
 Replace a source connection at a specified index. More...
 
bool SwapSrc (int pIndexA, int pIndexB)
 Swap source connection at index A with source connection at index B. More...
 
bool MoveSrcAt (int pIndex, int pAtIndex)
 Move source connection at pIndex to pAtIndex. More...
 
bool MoveSrcAt (FBPlug *pSrc, FBPlug *pAtSrc)
 Move source connection pSrc to the position of pAtSrc. More...
 
int GetSrcCount ()
 Get source connection count. More...
 
FBPlugGetSrc (int pIndex)
 Get a source connection's plug at specified index. More...
 
FBConnectionType GetSrcType (int pIndex)
 Get a source connection's type at specified index. More...
 
int GetDstCount ()
 Get destination connection count. More...
 
FBPlugGetDst (int pIndex)
 Get a destination connection's plug at specified index. More...
 
FBConnectionType GetDstType (int pIndex)
 Get a destination connection's type at specified index. More...
 
bool BeginChange ()
 Begins a change on multiple plugs. More...
 
void EndChange ()
 Ends a change on multiple plugs. More...
 
void SetSelfModified (FBPlugModificationFlag pFlag, bool pBool)
 Set the plug's self modification flag. More...
 
bool GetSelfModified (FBPlugModificationFlag pFlag)
 Tell if the plug's self has changed. More...
 
void SetContentModified (FBPlugModificationFlag pFlag, bool pBool)
 Set the plug's owned property/object's modification flag. More...
 
bool GetContentModified (FBPlugModificationFlag pFlag)
 Tell if the plug's content has changed. More...
 
int GetPlugConnectionModifiedList (FBPlugList &pPlugList, FBPlugModificationFlag pConnectionModificatonFlag, bool pAddRemove)
 Get plug's modified src/dst property/object connection added/removed List. More...
 
bool RevertModification (FBPlugModificationFlag pFlag=kFBAllModifiedMask)
 Revert the plug's modification to original status. More...
 
void SetStatusFlag (FBPlugStatusFlag pStatus, bool pValue)
 Set the plug's status flag. More...
 
bool GetStatusFlag (FBPlugStatusFlag pStatus) const
 Tell if the plug's status has changed. More...
 
FBPlugGetOwner ()
 Get the owner of this plug. More...
 
FBPlugGetOwned (int pIndex)
 Get the owned plug at specified index. More...
 
int GetOwnedCount ()
 Get the owned plug count. More...
 
virtual bool PlugDataNotify (FBConnectionAction pAction, FBPlug *pThis, void *pData=NULL, void *pDataOld=NULL, int pDataSize=0)
 PlugDataNotify when overloaded is equivalent of FBSystem.OnConnectionDataNotify but in the context of the derived object only. More...
 
virtual bool PlugStateNotify (FBConnectionAction pAction, FBPlug *pThis, void *pData=NULL, void *pDataOld=NULL, int pDataSize=0)
 PlugStateNotify when overloaded is equivalent of FBSystem.OnConnectionStateNotify but in the context of the derived object only. More...
 
virtual bool PlugNotify (FBConnectionAction pAction, FBPlug *pThis, int pIndex, FBPlug *pPlug=NULL, FBConnectionType pConnectionType=kFBConnectionTypeNone, FBPlug *pNewPlug=NULL)
 PlugNotify when overloaded is equivalent of FBSystem.OnConnectionNotify but in the context of the derived object only. More...
 
- Static Protected Member Functions inherited from FBPlug
static int GetInternalClassId ()
 Internal class Id. More...
 
- Protected Attributes inherited from FBPlug
bool mAllocated
 Contain the Allocation State of the Component. More...
 
HIObject mObject
 Handle on the Plug. More...
 
bool mSDKComponent
 bool Plug is an SDK component.
More...
 
- Static Protected Attributes inherited from FBPlug
static const char * ClassGroupName
 ClassGroupName of the object. More...
 
static int TypeInfo
 TypeInfo. More...
 
static int mGlobalTypeInfo
 Represente the Type Index. More...
 

Detailed Description

Instrument for a camera device.

This instrument provides the necessary parameters to provide camera tracking support in a device driver (the FBDeviceCamera class and its derivatives). This will also provide a management system for lens look-up tables. Lens tables are used in order to interpret linear encoder values with the non- linear changes in the actual lens.

Definition at line 227 of file fbtracker.h.

Constructor & Destructor Documentation

◆ FBDeviceCameraInstrument()

Constructor.

Parameters
pDeviceParent device.

Member Function Documentation

◆ FbxStore()

virtual bool FbxStore ( FBFbxObject pFbxObject,
kFbxObjectStore  pStoreWhat 
)
overridevirtual

Storage/Retrieval of information into the FBX file format.

Parameters
pFbxObjectObject to interface with FBX file format.
pStoreWhatAttributes to store in FBX file.
Returns
true if successful.

Reimplemented from FBDeviceInstrument.

◆ InstrumentRecordFrame()

virtual void InstrumentRecordFrame ( FBTime  pRecordTime,
FBDeviceNotifyInfo pNotifyInfo 
)
overridevirtual

Record the data to the function curves for the instrument.

Parameters
pRecordTimeTime to record data at.
pNotifyInfoDevice notification information structure.

Reimplemented from FBDeviceInstrument.

◆ InstrumentWriteData()

virtual bool InstrumentWriteData ( FBEvaluateInfo pEvaluateInfo)
overridevirtual

Write data to instrument's connectors.

In the evaluation engine callback, this will take the data in the instrument's temporary data holders and write it to the connectors.

Parameters
pEvaluateInfoEvaluation information structure.
Returns
true if successful.

Reimplemented from FBDeviceInstrument.

◆ LoadLensTables()

virtual bool LoadLensTables ( const char *  pFilename)
virtual

Load the lens lookup tables.

Parameters
pFilenameName of *.klc file with lens values.
Returns
true if successful.

◆ ProcessLensData()

virtual void ProcessLensData ( FBDeviceCameraPacket pDataPacket)
virtual

Process the lens table data for this data packet.

The actual operation for this will depend on a couple of properties for the instrument: LensTableLoaded, LensMode, as well as the invert values and the zoom multiplier.

Parameters
pDataPacketCamera data to process with the lens tables.

Member Data Documentation

◆ AspectRatio

FBPropertyDouble AspectRatio

Property(RW): Aspect ratio for calculating the Field of View X value.

Definition at line 275 of file fbtracker.h.

◆ InvertFocus

FBPropertyBool InvertFocus

Property(RW): Invert the focus encoder values?

Definition at line 270 of file fbtracker.h.

◆ InvertZoom

FBPropertyBool InvertZoom

Property(RW): Invert the zoom encoder values?

Definition at line 269 of file fbtracker.h.

◆ LensCalibrationFilename

FBPropertyString LensCalibrationFilename

Property(R-): Lens calibration filename.

Definition at line 260 of file fbtracker.h.

◆ LensFovInDegrees

FBPropertyBool LensFovInDegrees

Property(RW): Is FOV in table in degrees (false)

Definition at line 268 of file fbtracker.h.

◆ LensTableLoaded

FBPropertyBool LensTableLoaded

Property(R-): Has the lens table been loaded?

Definition at line 259 of file fbtracker.h.

◆ ManualCenterMode

FBPropertyBool ManualCenterMode

Property(RW): Manually adjust the optical center?

Definition at line 265 of file fbtracker.h.

◆ ManualCenterX

FBPropertyDouble ManualCenterX

Property(RW): Manual optical center X coordinate.

Definition at line 266 of file fbtracker.h.

◆ ManualCenterY

FBPropertyDouble ManualCenterY

Property(RW): Manual optical center Y coordinate.

Definition at line 267 of file fbtracker.h.

◆ ManualFovMode

FBPropertyBool ManualFovMode

Property(RW): In manual mode (not using encoder values to control zoom)?

Definition at line 262 of file fbtracker.h.

◆ ManualFovX

FBPropertyDouble ManualFovX

Property(RW): Manual field of view X value.

Definition at line 263 of file fbtracker.h.

◆ ManualFovY

FBPropertyDouble ManualFovY

Property(RW): Manual field of view Y value.

Definition at line 264 of file fbtracker.h.

◆ NodalMultiplier

FBPropertyDouble NodalMultiplier

Property(RW): Multiplier for nodal offset.

Definition at line 272 of file fbtracker.h.

◆ Packet

FBPropertyDeviceCameraPacket Packet

Property(RW): Used as a buffer to contain the current state of the instrument, use to put data in connector.

Definition at line 256 of file fbtracker.h.

◆ RecordPacket

FBPropertyDeviceCameraPacket RecordPacket

Property(RW): Used as a buffer to contain the record state of the instrument, use to create the keys when recording.

Definition at line 257 of file fbtracker.h.

◆ RotationOffset

FBPropertyVector3d RotationOffset

Property(RW): Rotation offset.

Definition at line 274 of file fbtracker.h.

◆ TranslationOffset

FBPropertyVector3d TranslationOffset

Property(RW): Translation offset;

Definition at line 273 of file fbtracker.h.

◆ ZoomMultiplier

FBPropertyDouble ZoomMultiplier

Property(RW): Filmback multiplier.

Definition at line 271 of file fbtracker.h.


The documentation for this class was generated from the following file: