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 (char *pName, HIObject pObject=NULL)
  Constructor.
virtual bool  FBCreate ()
  Open Reality Creation function.
virtual void  FBDestroy ()
  Open Reality destruction function.
virtual bool  DeviceSyncAnimationNodeNotify (HFBAnimationNode pAnimationNode, HFBEvaluateInfo 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 (HFBModel pModel, int pIndex, HFBModelTemplate pModelTemplate)
  Model Template binding notification callback.
virtual bool  FbxStore (HFBFbxObject pFbxObject, kFbxObjectStore pStoreWhat)
  Storage/Retrieval of information into the FBX file format.
virtual bool  FbxRetrieve (HFBFbxObject pFbxObject, kFbxObjectStore pStoreWhat)
virtual void  RecordingInitAnimation (HFBAnimationNode pAnimationNode)
  When recording, initialize animation.
virtual void  RecordingDoneAnimation (HFBAnimationNode pAnimationNode)
  When recording, finish animation.
virtual bool  DeviceCameraAnimationNodeNotify (HFBEvaluateInfo 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 (HFBEvaluateInfo pEvaluateInfo)
  Write data to camera connectors.
virtual bool  LoadLensTables (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 ( 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 ( HFBAnimationNode  pAnimationNode,
HFBEvaluateInfo  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 ( HFBModel  pModel,
int  pIndex,
HFBModelTemplate  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 ( HFBFbxObject  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 ( HFBFbxObject  pFbxObject,
kFbxObjectStore  pStoreWhat 
) [virtual]
virtual void RecordingInitAnimation ( HFBAnimationNode  pAnimationNode ) [virtual]

When recording, initialize animation.

Parameters:
pAnimationNode Animation node to read information from.

Reimplemented from FBDevice.

virtual void RecordingDoneAnimation ( HFBAnimationNode  pAnimationNode ) [virtual]

When recording, finish animation.

Parameters:
pAnimationNode Animation node to write information to.

Reimplemented from FBDevice.

virtual bool DeviceCameraAnimationNodeNotify ( HFBEvaluateInfo  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 ( HFBEvaluateInfo  pEvaluateInfo ) [virtual]

Write data to camera connectors.

Parameters:
pEvaluateInfo Evaluation information structure.
Returns:
true if successful.
virtual bool LoadLensTables ( 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