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 } |
|
Transport control types for device. More... |
|
Public Member Functions |
|
| FBDevice (char *pName, HIObject pObject=NULL) | |
| Constructor. |
|
| virtual bool | FBCreate () |
| Open Reality Creation function. |
|
| virtual void | FBDestroy () |
| Open Reality destruction function. |
|
| virtual HFBAnimationNode | AnimationNodeInCreate (kReference pUserId, char *pName, char *pDataType, bool pIsPublic=true, double *pMin=NULL, double *pMax=NULL, bool pUserData=false) |
| Creation of IN/OUT Animation Nodes. |
|
| virtual HFBAnimationNode | AnimationNodeOutCreate (kReference pUserId, char *pName, 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, HFBEvaluateInfo pEvaluateInfo) |
| Real-Time engine thread: Output device
evaluation. |
|
| virtual bool | ModelTemplateBindNotify (HFBModel pModel, int pIndex, HFBModelTemplate pModelTemplate) |
| Model Template binding notification
callback. |
|
| virtual bool | ModelTemplateUnBindNotify (int pIndex, HFBModelTemplate pModelTemplate) |
| Model Template unbinding notification
callback. |
|
| virtual bool | AnimationNodeNotify (HFBAnimationNode pAnimationNode, HFBEvaluateInfo pEvaluateInfo) override |
| Notification function for animation thread.
|
|
| virtual char * | FbxGetObjectType () override |
| Object Type "Device". |
|
| virtual void | DeviceSendCommand (kDeviceOperations pOperation) |
| Send a command to the device. |
|
| IObject_Declare (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 (HFBAnimationNode pAnimationNode) |
| When recording, initialize animation.
|
|
| virtual void | RecordingDoneAnimation (HFBAnimationNode pAnimationNode) |
| When recording, finish animation. |
|
| virtual bool | FbxStore (HFBFbxObject pFbxObject, kFbxObjectStore pStoreWhat) override |
| Storage/Retrieval of information into the
FBX file format. |
|
| virtual bool | FbxRetrieve (HFBFbxObject 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. |
|
| 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. |
Definition at line 707 of file fbcore.h.
{
kPreparePlay,
kPlayReady,
kPlayStop,
kStop,
kPlay,
kJog
};
| FBDevice | ( | 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 HFBAnimationNode AnimationNodeInCreate | ( | kReference | pUserId, |
| char * | pName, | ||
| 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 (default is false). |
| pMin | Minimum values for data (default is NULL). |
| pMax | Maximum values for data (default is NULL). |
| pUserData | Is this user data? (default is false) |
Reimplemented from FBBox.
| virtual HFBAnimationNode AnimationNodeOutCreate | ( | kReference | pUserId, |
| char * | pName, | ||
| 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, |
| HFBEvaluateInfo | pEvaluateInfo | ||
| ) | [virtual] |
Real-Time engine thread: Output device evaluation.
| pMode | Transport mode. |
| pEvaluateInfo | Access to the system and local time. |
| virtual bool ModelTemplateBindNotify | ( | HFBModel | pModel, |
| int | pIndex, | ||
| HFBModelTemplate | 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, |
| HFBModelTemplate | pModelTemplate | ||
| ) | [virtual] |
Model Template unbinding notification callback.
| pIndex | Index in pModelTemplate where unbinding has occured. |
| pModelTemplate | Model template from which binding is removed. |
| virtual bool AnimationNodeNotify | ( | HFBAnimationNode | pAnimationNode, |
| HFBEvaluateInfo | 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 char* FbxGetObjectType | ( | ) | [override, virtual] |
| virtual bool FbxStore | ( | HFBFbxObject | 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 | ( | HFBFbxObject | 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 | ( | 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 | ( | HFBAnimationNode | pAnimationNode | ) | [virtual] |
When recording, initialize animation.
| pAnimationNode | Animation node to read information from. |
Reimplemented in FBDeviceGlove, FBDeviceOptical, and FBDeviceCamera.
| virtual void RecordingDoneAnimation | ( | HFBAnimationNode | 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.
| 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.