Public Member Functions | Public Attributes

FBDeviceCamera Class Reference

This reference page is linked to from the following overview topics: Motion Capture Devices.


Search for all occurrences

Detailed Description

Camera device base class.

Based on the FBDeviceSync class, this class generalizes the concept of a virtual set camera driver, permitting synchronization with a genlock source, generic camera connectors, and model templates.

Definition at line 286 of file fbtracker.h.

#include <fbtracker.h>

Inheritance diagram for FBDeviceCamera:
Inheritance graph
[legend]

List of all members.

Public Member Functions

  FBDeviceCamera (const char *pName, HIObject pObject=NULL)
  Constructor.
virtual bool  FBCreate ()
  Open Reality Creation function.
virtual void  FBDestroy ()
  Open Reality destruction function.
virtual bool  DeviceSyncAnimationNodeNotify (FBAnimationNode *pAnimationNode, FBEvaluateInfo *pEvaluateInfo, int pCorrectedSync)
  Real-Time synchronous evaluation callback.
virtual void  DeviceIONotify (kDeviceIOs pAction, FBDeviceNotifyInfo &pDeviceNotifyInfo)
  Real-Time engine thread: Device I/O.
virtual bool  ModelTemplateBindNotify (FBModel *pModel, int pIndex, FBModelTemplate *pModelTemplate)
  Model Template binding notification callback.
virtual bool  FbxStore (FBFbxObject *pFbxObject, kFbxObjectStore pStoreWhat)
  Storage/Retrieval of information into the FBX file format.
virtual bool  FbxRetrieve (FBFbxObject *pFbxObject, kFbxObjectStore pStoreWhat)
virtual void  RecordingInitAnimation (FBAnimationNode *pAnimationNode)
  When recording, initialize animation.
virtual void  RecordingDoneAnimation (FBAnimationNode *pAnimationNode)
  When recording, finish animation.
virtual bool  DeviceCameraAnimationNodeNotify (FBEvaluateInfo *pEvaluateInfo, HFBDeviceCameraPacket pDstPacket, HFBDeviceSyncPacket pSrcPacket)
  Evaluation engine callback for camera device.
virtual void  DeviceCameraEvalData (FBDeviceNotifyInfo &pNotifyInfo)
  I/O for camera device.
virtual void  DeviceCameraRecordFrame (FBTime &pRecordTime, FBDeviceNotifyInfo &pNotifyInfo)
  Record a frame of data to the FCurves for the camera device.
virtual bool  DeviceCameraWriteData (FBEvaluateInfo *pEvaluateInfo)
  Write data to camera connectors.
virtual bool  LoadLensTables (const char *pFilename)
  Load the lens lookup tables.
virtual void  ProcessLensData (HFBDeviceCameraPacket pDataPacket)
  Process the lens table data for this data packet.

Public Attributes

FBPropertyBool  UsingCustomInstruments
  Property(RW): Using custom instruments?
FBPropertyInt  NumberOfInstruments
  Property(RW): Number of instruments.
FBPropertyString  ModelTemplatePrefix
  Property(RW): Model template prefix.

Constructor & Destructor Documentation

FBDeviceCamera ( const char *  pName,
HIObject  pObject = NULL 
)

Constructor.

Parameters:
pName Unique name of optical device.
pObject Internal parent object(default=NULL).

Member Function Documentation

virtual bool FBCreate ( ) [virtual]

Open Reality Creation function.

Returns:
Outcome of creation (true/false).

Reimplemented from FBDeviceSync.

virtual void FBDestroy ( ) [virtual]

Open Reality destruction function.

Reimplemented from FBDeviceSync.

virtual bool DeviceSyncAnimationNodeNotify ( FBAnimationNode pAnimationNode,
FBEvaluateInfo pEvaluateInfo,
int  pCorrectedSync 
) [virtual]

Real-Time synchronous evaluation callback.

Note that this function must be overloaded to instanciate a synchronous device class.

Parameters:
pAnimationNode Connector being pulled.
pEvaluateInfo Evaluation information structure.
pCorrectedSync Corrected sync value.

Implements FBDeviceSync.

virtual void DeviceIONotify ( kDeviceIOs  pAction,
FBDeviceNotifyInfo pDeviceNotifyInfo 
) [virtual]

Real-Time engine thread: Device I/O.

The device I/O thread calls this function (required) which is a highly optimized non-blocking function registering input/output information from/to the device.

Parameters:
pAction Different reading/writing actions for the device.
pDeviceNotifyInfo Access to the system and local time.

Reimplemented from FBDevice.

virtual bool ModelTemplateBindNotify ( FBModel pModel,
int  pIndex,
FBModelTemplate pModelTemplate 
) [virtual]

Model Template binding notification callback.

Parameters:
pModel Model being bound to model template.
pIndex Index of model template where binding is occuring.
pModelTemplate Model being affected with binding.
Returns:
true if successful.

Reimplemented from FBDevice.

virtual bool FbxStore ( FBFbxObject pFbxObject,
kFbxObjectStore  pStoreWhat 
) [virtual]

Storage/Retrieval of information into the FBX file format.

Parameters:
pFbxObject Object to interface with FBX file format.
pStoreWhat Attributes to store in FBX file.
Returns:
true if successful.

Reimplemented from FBDeviceSync.

virtual bool FbxRetrieve ( FBFbxObject pFbxObject,
kFbxObjectStore  pStoreWhat 
) [virtual]
virtual void RecordingInitAnimation ( FBAnimationNode pAnimationNode ) [virtual]

When recording, initialize animation.

Parameters:
pAnimationNode Animation node to read information from.

Reimplemented from FBDevice.

virtual void RecordingDoneAnimation ( FBAnimationNode pAnimationNode ) [virtual]

When recording, finish animation.

Parameters:
pAnimationNode Animation node to write information to.

Reimplemented from FBDevice.

virtual bool DeviceCameraAnimationNodeNotify ( FBEvaluateInfo pEvaluateInfo,
HFBDeviceCameraPacket  pDstPacket,
HFBDeviceSyncPacket  pSrcPacket 
) [virtual]

Evaluation engine callback for camera device.

Parameters:
pEvaluateInfo Evaluation information structure.
pDstPacket Destination packet to fill with camera data (will go to connectors).
pSrcPacket Source packet of information (from Sync buffer).
Returns:
true if successful.
virtual void DeviceCameraEvalData ( FBDeviceNotifyInfo pNotifyInfo ) [virtual]

I/O for camera device.

This synchronous callback is used to fill the device buffer and is not necessary if the device I/O notify function call is overloaded, as it merely isolates the read operation from DeviceIONotify().

Parameters:
pNotifyInfo Device notification information structure.
virtual void DeviceCameraRecordFrame ( FBTime pRecordTime,
FBDeviceNotifyInfo pNotifyInfo 
) [virtual]

Record a frame of data to the FCurves for the camera device.

Parameters:
pRecordTime Time to record values for.
pNotifyInfo Device notification structure.
virtual bool DeviceCameraWriteData ( FBEvaluateInfo pEvaluateInfo ) [virtual]

Write data to camera connectors.

Parameters:
pEvaluateInfo Evaluation information structure.
Returns:
true if successful.
virtual bool LoadLensTables ( const char *  pFilename ) [virtual]

Load the lens lookup tables.

Parameters:
pFilename Name of *.klc file with lens values.
Returns:
true if successfully loaded.
virtual void ProcessLensData ( HFBDeviceCameraPacket  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:
pDataPacket Camera data to process with the lens tables.

Member Data Documentation

Property(RW): Using custom instruments?

Definition at line 347 of file fbtracker.h.

Property(RW): Number of instruments.

Definition at line 348 of file fbtracker.h.

Property(RW): Model template prefix.

Definition at line 349 of file fbtracker.h.


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

FBDeviceCamera FBDeviceCamera FBDeviceCamera FBDeviceCamera FBDeviceCamera FBDeviceCamera FBDeviceCamera FBDeviceCamera FBDeviceCamera FBDeviceCamera
FBDeviceCamera FBDeviceCamera FBDeviceCamera FBDeviceCamera FBDeviceCamera FBDeviceCamera FBDeviceCamera FBDeviceCamera FBDeviceCamera FBDeviceCamera