This reference page is linked to from the following overview topics: Your First Python Program, Threading, Motion Capture Devices, Optical devices, Device layouts.
#include <fbcore.h>
Public Types | |
enum | kDeviceOperations { kOpInit, kOpStart, kOpAutoDetect, kOpStop, kOpReset, kOpDone } |
Types of operations for device. More... | |
enum | kDeviceIOs { kIOStopModeRead, kIOPlayModeRead, kIOStopModeWrite, kIOPlayModeWrite } |
Types of I/O for device. More... | |
enum | kTransportMode { kPreparePlay, kPlayReady, kPlayStop, kStop, kPlay, kJog, kPlayReverse } |
Transport control types for device. More... | |
Public Member Functions | |
FBDevice (const char *pName, HIObject pObject=NULL) | |
Constructor. | |
virtual bool | FBCreate () |
Open Reality Creation function. | |
virtual void | FBDestroy () |
Open Reality destruction function. | |
virtual FBAnimationNode * | AnimationNodeInCreate (kReference pUserId, const char *pName, const char *pDataType, bool pIsPublic=true, double *pMin=NULL, double *pMax=NULL, bool pUserData=false) |
Creation of IN/OUT Animation Nodes. | |
virtual FBAnimationNode * | AnimationNodeOutCreate (kReference pUserId, const char *pName, const char *pDataType, bool pIsPublic=true, double *pMin=NULL, double *pMax=NULL, bool pUserData=false) |
virtual bool | DeviceOperation (kDeviceOperations pOperation) |
Operate device. | |
virtual void | DeviceTransportNotify (kTransportMode pMode, FBTime pTime, FBTime pSystem) |
Real-Time engine thread: Tranport notifications. | |
virtual void | DeviceIONotify (kDeviceIOs pAction, FBDeviceNotifyInfo &pDeviceNotifyInfo) |
Real-Time engine thread: Device I/O. | |
virtual bool | DeviceEvaluationNotify (kTransportMode pMode, FBEvaluateInfo *pEvaluateInfo) |
Real-Time engine thread: Output device evaluation. | |
virtual bool | ModelTemplateBindNotify (FBModel *pModel, int pIndex, FBModelTemplate *pModelTemplate) |
Model Template binding notification callback. | |
virtual bool | ModelTemplateUnBindNotify (int pIndex, FBModelTemplate *pModelTemplate) |
Model Template unbinding notification callback. | |
FBModel * | ModelBindingCreate () |
Create a new model binding. | |
void | ModelBindingRootsList (FBModelList &pList) |
Get the list of all the possible root models for binding. | |
virtual bool | AnimationNodeNotify (FBAnimationNode *pAnimationNode, FBEvaluateInfo *pEvaluateInfo) override |
Notification function for animation thread. | |
virtual const char * | FbxGetObjectType () override |
Object Type "Device". | |
virtual void | DeviceSendCommand (kDeviceOperations pOperation) |
Send a command to the device. | |
IObject_Declare (K_IMPLEMENTATION) | |
void | AckOneSampleReceived () |
Acknowlege that one sample was received (for statistical purposes). | |
void | AckOneBadSampleReceived () |
Acknowlege that one bad sample was received (for statistical purposes). | |
void | AckOneSampleSent () |
Acknowlege that one sample was sent (for statistical purposes). | |
virtual void | RecordingInitAnimation (FBAnimationNode *pAnimationNode) |
When recording, initialize animation. | |
virtual void | RecordingDoneAnimation (FBAnimationNode *pAnimationNode) |
When recording, finish animation. | |
virtual bool | FbxStore (FBFbxObject *pFbxObject, kFbxObjectStore pStoreWhat) override |
Storage/Retrieval of information into the FBX file format. | |
virtual bool | FbxRetrieve (FBFbxObject *pFbxObject, kFbxObjectStore pStoreWhat) override |
Public Attributes | |
FBPropertyString | IconFilename |
Read Write Property: Icon filename. | |
FBPropertyString | Status |
Read Write Property: Device information: status. | |
FBPropertyString | Information |
Read Write Property: Device information: information. | |
FBPropertyString | HardwareVersionInfo |
Read Write Property: Device information: hardware version. | |
FBPropertyTime | SamplingPeriod |
Read Write Property: Set this to how many times a device is to be evaluated in one second. | |
FBPropertyBool | Online |
Read Write Property: Is online? | |
FBPropertyEvent | OnStatusChange |
Event: Status of device changed. | |
FBModelTemplate | ModelTemplate |
Component: Root of model template structure. | |
FBPropertyModel | ModelBindingRoot |
Component: Root of model currently binded model hierarchy. | |
FBPropertyDeviceSamplingMode | SamplingMode |
Read Write Property: Mode to use to record device. | |
FBPropertyInt | CommType |
Read Write Property: Type of communications. | |
FBPropertyListDeviceInstrument | Instruments |
List: List of instruments. | |
FBPropertyTime | RecordingStartTime |
Read Only Property: The time at which the recording started. | |
FBPropertyTime | RecordingStopTime |
Read Only Property: The time at which the recording stopped. | |
Friends | |
class | __FBDevice |
class | DataFBDeviceOptical |
enum kDeviceOperations |
Types of operations for device.
These are parameters for the DeviceSendCommand() function.
enum kDeviceIOs |
Types of I/O for device.
These are states of the engine for the DeviceIONotify callback.
enum kTransportMode |
Transport control types for device.
These are states of the engine for the DeviceEvaluationNofity callback.
kPreparePlay |
Preparing to play. |
kPlayReady |
Ready to play. |
kPlayStop |
Stopping play. |
kStop |
Play stopped. |
kPlay |
Playing. |
kJog |
Jog. |
kPlayReverse |
Playing Reverse. |
Definition at line 754 of file fbcore.h.
{ kPreparePlay, kPlayReady, kPlayStop, kStop, kPlay, kJog, kPlayReverse };
FBDevice | ( | const char * | pName, |
HIObject | pObject = NULL |
||
) |
Constructor.
pName | Name of device. |
pObject | For internal use only (default is NULL). |
virtual bool FBCreate | ( | ) | [virtual] |
Open Reality Creation function.
Reimplemented from FBComponent.
Reimplemented in FBDeviceOptical, FBDeviceSync, and FBDeviceCamera.
virtual void FBDestroy | ( | ) | [virtual] |
Open Reality destruction function.
Reimplemented from FBComponent.
Reimplemented in FBDeviceOptical, FBDeviceSync, and FBDeviceCamera.
virtual FBAnimationNode* AnimationNodeInCreate | ( | kReference | pUserId, |
const char * | pName, | ||
const char * | pDataType, | ||
bool | pIsPublic = true , |
||
double * | pMin = NULL , |
||
double * | pMax = NULL , |
||
bool | pUserData = false |
||
) | [virtual] |
Creation of IN/OUT Animation Nodes.
pUserId | User-defined reference number. |
pName | Name of animation node. |
pDataType | Type of data being animated. |
pIsPublic | Determine if the animation node is published, that means whether to show it in property editor and have input / output in relation constraints editor (default is false). |
pMin | Minimum values for data (default is NULL). |
pMax | Maximum values for data (default is NULL). |
pUserData | Is this user data? False means the property is NOT animated, user cannot change the data. Especially for device, it doesn't make sense to make it animated, unless you want to record the device data. (default is false). |
Reimplemented from FBBox.
virtual FBAnimationNode* AnimationNodeOutCreate | ( | kReference | pUserId, |
const char * | pName, | ||
const char * | pDataType, | ||
bool | pIsPublic = true , |
||
double * | pMin = NULL , |
||
double * | pMax = NULL , |
||
bool | pUserData = false |
||
) | [virtual] |
Reimplemented from FBBox.
virtual bool DeviceOperation | ( | kDeviceOperations | pOperation | ) | [virtual] |
Operate device.
This is an operation such as Init, Start, Done, Reset, etc.
pOperation | Operation to have device perform. |
Reimplemented in FBDeviceOptical.
virtual void DeviceTransportNotify | ( | kTransportMode | pMode, |
FBTime | pTime, | ||
FBTime | pSystem | ||
) | [virtual] |
Real-Time engine thread: Tranport notifications.
The device I/O thread calls this function when there is a transport change.
pMode | Transport mode. |
pTime | Local time. |
pSystem | System time. |
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.
pAction | Different reading/writing actions for the device. |
pDeviceNotifyInfo | Access to the system and local time. |
Reimplemented in FBDeviceOptical, and FBDeviceCamera.
virtual bool DeviceEvaluationNotify | ( | kTransportMode | pMode, |
FBEvaluateInfo * | pEvaluateInfo | ||
) | [virtual] |
Real-Time engine thread: Output device evaluation.
pMode | Transport mode. |
pEvaluateInfo | Access to the system and local time. |
virtual bool ModelTemplateBindNotify | ( | FBModel * | pModel, |
int | pIndex, | ||
FBModelTemplate * | pModelTemplate | ||
) | [virtual] |
Model Template binding notification callback.
pModel | Model being bound to model template. |
pIndex | Index of model template where binding is occuring. |
pModelTemplate | Model being affected with binding. |
Reimplemented in FBDeviceCamera.
virtual bool ModelTemplateUnBindNotify | ( | int | pIndex, |
FBModelTemplate * | pModelTemplate | ||
) | [virtual] |
Model Template unbinding notification callback.
pIndex | Index in pModelTemplate where unbinding has occured. |
pModelTemplate | Model template from which binding is removed. |
FBModel* ModelBindingCreate | ( | ) |
Create a new model binding.
void ModelBindingRootsList | ( | FBModelList & | pList | ) |
Get the list of all the possible root models for binding.
pList | List to add found models to. |
virtual bool AnimationNodeNotify | ( | FBAnimationNode * | pAnimationNode, |
FBEvaluateInfo * | pEvaluateInfo | ||
) | [override, virtual] |
Notification function for animation thread.
This function is called by the real-time engine in order to process animation information.
pAnimationNode | Node containing the modified information. |
pEvaluateInfo | Information concerning the evaluation of the animation (time, etc.) |
Reimplemented from FBBox.
Reimplemented in FBDeviceOptical, and FBDeviceSync.
virtual const char* FbxGetObjectType | ( | ) | [override, virtual] |
virtual bool FbxStore | ( | FBFbxObject * | pFbxObject, |
kFbxObjectStore | pStoreWhat | ||
) | [override, virtual] |
Storage/Retrieval of information into the FBX file format.
pFbxObject | Object to interface with FBX file format. |
pStoreWhat | Attributes to store in FBX file. |
Reimplemented from FBBox.
Reimplemented in FBDeviceOptical, FBDeviceSync, and FBDeviceCamera.
virtual bool FbxRetrieve | ( | FBFbxObject * | pFbxObject, |
kFbxObjectStore | pStoreWhat | ||
) | [override, virtual] |
Reimplemented from FBBox.
Reimplemented in FBDeviceOptical, FBDeviceSync, and FBDeviceCamera.
virtual void DeviceSendCommand | ( | kDeviceOperations | pOperation | ) | [virtual] |
Send a command to the device.
This function will send the Init, Start, etc. commands to the device.
pOperation | Operation for device to perform. |
IObject_Declare | ( | K_IMPLEMENTATION | ) |
Reimplemented from FBBox.
void AckOneSampleReceived | ( | ) |
Acknowlege that one sample was received (for statistical purposes).
void AckOneBadSampleReceived | ( | ) |
Acknowlege that one bad sample was received (for statistical purposes).
void AckOneSampleSent | ( | ) |
Acknowlege that one sample was sent (for statistical purposes).
virtual void RecordingInitAnimation | ( | FBAnimationNode * | pAnimationNode | ) | [virtual] |
When recording, initialize animation.
pAnimationNode | Animation node to read information from. |
Reimplemented in FBDeviceGlove, FBDeviceOptical, and FBDeviceCamera.
virtual void RecordingDoneAnimation | ( | FBAnimationNode * | pAnimationNode | ) | [virtual] |
When recording, finish animation.
pAnimationNode | Animation node to write information to. |
Reimplemented in FBDeviceGlove, FBDeviceOptical, and FBDeviceCamera.
friend class __FBDevice [friend] |
friend class DataFBDeviceOptical [friend] |
Read Write Property: Icon filename.
Read Write Property: Device information: status.
Read Write Property: Device information: information.
Read Write Property: Device information: hardware version.
Read Write Property: Set this to how many times a device is to be evaluated in one second.
There is no theoretical maximum value but practically you should consider scene complexity, system resources, network speed, etc. If set to 0: the device is evaluated on the sync signal. When the sync occurs; the device is scheduled to be evaluated. If you do not set, the sampling period is based on the internal variable from the [Sync] section of the .Application.txt file (NTSC, PAL, CINEMA).
Event: Status of device changed.
Component: Root of model template structure.
FBPropertyModel ModelBindingRoot |
Component: Root of model currently binded model hierarchy.
FBPropertyDeviceSamplingMode SamplingMode |
Read Write Property: Mode to use to record device.
Read Write Property: Type of communications.
Read Only Property: The time at which the recording started.
Read Only Property: The time at which the recording stopped.