Open Reality Reference Guide
FBDeviceGlove Class Reference

Base Glove class. More...

#include <fbcore.h>

Inheritance diagram for FBDeviceGlove:

Classes

class  GloveChannel
 Base GloveChannel. More...
 

Public Types

enum  kHandModelPart {
  kPartRoot ,
  kPartPalm ,
  kPartThumbA ,
  kPartThumbB ,
  kPartThumbC ,
  kPartThumbD ,
  kPartIndexA ,
  kPartIndexB ,
  kPartIndexC ,
  kPartIndexD ,
  kPartMiddleA ,
  kPartMiddleB ,
  kPartMiddleC ,
  kPartMiddleD ,
  kPartRingA ,
  kPartRingB ,
  kPartRingC ,
  kPartRingD ,
  kPartLittleA ,
  kPartLittleB ,
  kPartLittleC ,
  kPartLittleD ,
  kPartMax
}
 Hand model parts. More...
 
- Public Types inherited from FBDevice
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 Types inherited from FBBox
enum  ECandidateAction {
  eCandidateAccept ,
  eCandidateIntercept ,
  eCandidateInterceptAfterEvaluation
}
 Resolving action for candidates. More...
 

Public Member Functions

 FBDeviceGlove (const char *pName, HIObject pObject=NULL)
 Constructor. More...
 
virtual void RecordingInitAnimation (FBAnimationNode *pAnimationNode) override
 When recording, initialize animation. More...
 
virtual void RecordingDoneAnimation (FBAnimationNode *pAnimationNode) override
 When recording, finish animation. More...
 
- Public Member Functions inherited from FBDevice
 FBDevice (const char *pName, HIObject pObject=NULL)
 Constructor. More...
 
virtual bool FBCreate () override
 Open Reality Creation function. More...
 
virtual void FBDestroy () override
 Open Reality destruction function. More...
 
virtual FBAnimationNodeAnimationNodeInCreate (kReference pUserId, const char *pName, const char *pDataType, bool pIsPublic=true, double *pMin=NULL, double *pMax=NULL, bool pUserData=false) override
 Creation of IN/OUT Animation Nodes. More...
 
virtual FBAnimationNodeAnimationNodeOutCreate (kReference pUserId, const char *pName, const char *pDataType, bool pIsPublic=true, double *pMin=NULL, double *pMax=NULL, bool pUserData=false) override
 
virtual bool DeviceOperation (kDeviceOperations pOperation)
 Operate device. More...
 
virtual void DeviceTransportNotify (kTransportMode pMode, FBTime pTime, FBTime pSystem)
 Real-Time engine thread: Tranport notifications. More...
 
virtual void DeviceIONotify (kDeviceIOs pAction, FBDeviceNotifyInfo &pDeviceNotifyInfo)
 Real-Time engine thread: Device I/O. More...
 
virtual bool DeviceEvaluationNotify (kTransportMode pMode, FBEvaluateInfo *pEvaluateInfo)
 Real-Time engine thread: Output device evaluation. More...
 
virtual bool ModelTemplateBindNotify (FBModel *pModel, int pIndex, FBModelTemplate *pModelTemplate)
 Model Template binding notification callback. More...
 
virtual bool ModelTemplateUnBindNotify (int pIndex, FBModelTemplate *pModelTemplate)
 Model Template unbinding notification callback. More...
 
FBModelModelBindingCreate ()
 Create a new model binding. More...
 
void ModelBindingRootsList (FBModelList &pList)
 Get the list of all the possible root models for binding. More...
 
virtual bool AnimationNodeNotify (FBAnimationNode *pAnimationNode, FBEvaluateInfo *pEvaluateInfo) override
 Notification function for animation thread. More...
 
virtual const char * FbxGetObjectType () override
 Returns the class type inherited by the class of an object, for example: 'Device'. 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
 
virtual void DeviceSendCommand (kDeviceOperations pOperation)
 Send a command to the device. More...
 
 IObject_Declare (override)
 
void AckOneSampleReceived ()
 Acknowlege that one sample was received (for statistical purposes). More...
 
void AckOneBadSampleReceived ()
 Acknowlege that one bad sample was received (for statistical purposes). More...
 
void AckOneSampleSent ()
 Acknowlege that one sample was sent (for statistical purposes). More...
 
- Public Member Functions inherited from FBBox
 FBBox (const char *pName, HIObject pObject=NULL)
 Constructor. More...
 
virtual bool EvaluateAnimationNodes (FBEvaluateInfo *pEvaluateInfo)
 Evaluation of non TRS nodes that needs to be evaluated. More...
 
virtual bool ResolveCandidate (FBAnimationNode *pAnimationNode, FBEvaluateInfo *pEvaluateInfo)
 Function is call when candidate needs to be resolved (like global to local). More...
 
virtual ECandidateAction SetGlobalCandidate (FBAnimationNode *pAnimationNode, double *pData, FBEvaluateInfo *pEvaluateInfo)
 Function is call when a global candidate is set on an animation node. More...
 
virtual ECandidateAction SetStdCandidate (FBAnimationNode *pAnimationNode, double *pData, FBEvaluateInfo *pEvaluateInfo)
 Function is call when a non-global candidate is set on an animation node. More...
 
virtual bool AnimationNodeDestroy (FBAnimationNode *pAnimationNode)
 Destroy an animation node. More...
 
virtual bool AnimationNodeIsUserData (FBAnimationNode *pAnimationNode)
 Is the animation node user data? More...
 
virtual void AnimationNodesOutDisableIfNotWritten (FBEvaluateInfo *pEvaluateInfo)
 This call will disable all out animation nodes from being pull by system (animation thread) for given pEvaluateInfo. More...
 
virtual FBAnimationNodeAnimationNodeInGet ()
 Get the (IN/OUT) animation node for this box. More...
 
virtual FBAnimationNodeAnimationNodeOutGet ()
 
virtual const char * FbxGetObjectSubType ()
 Returns the class sub type inherited by the class of an object, for example: 'Relations', 'Parent-Child', 'Number to Vector', 'Shot'. More...
 
 IObject_Declare (override)
 
virtual int GetOutConnectorCount () const
 Get the number of animation node outputs for this box. More...
 
virtual int GetInConnectorCount () const
 Get the number of animation node inputs for this box. More...
 
virtual FBAnimationNodeGetOutConnector (int pIndex) const
 Get the animation node output associated with the given index. More...
 
virtual FBAnimationNodeGetInConnector (int pIndex) const
 Get the animation node input associated with the given index. More...
 
- Public Member Functions inherited from FBComponent
 FBComponent (HIObject pObject)
 Constructor. More...
 
virtual ~FBComponent ()
 Destructor. 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

FBArrayTemplate< GloveChannel * > Channels
 Glove channels. More...
 
FBPropertyBool LeftHand
 Read Write Property: Left or right hand glove. More...
 
- Public Attributes inherited from FBDevice
FBPropertyString Status
 Read Write Property: Device information: status. More...
 
FBPropertyString Information
 Read Write Property: Device information: information. More...
 
FBPropertyString HardwareVersionInfo
 Read Write Property: Device information: hardware version. More...
 
FBPropertyTime SamplingPeriod
 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). More...
 
FBPropertyBool Online
 Read Write Property: Is online? More...
 
FBPropertyEvent OnStatusChange
 Event: Status of device changed. More...
 
FBModelTemplate ModelTemplate
 Component: Root of model template structure. More...
 
FBPropertyModel ModelBindingRoot
 Component: Root of model currently binded model hierarchy. More...
 
FBPropertyDeviceSamplingMode SamplingMode
 Read Write Property: Mode to use to record device. More...
 
FBPropertyInt CommType
 Read Write Property: Type of communications. More...
 
FBPropertyListDeviceInstrument Instruments
 List: List of instruments. More...
 
FBPropertyTime RecordingStartTime
 Read Only Property: The time at which the recording started. More...
 
FBPropertyTime RecordingStopTime
 Read Only Property: The time at which the recording stopped. More...
 
- Public Attributes inherited from FBBox
const char * UniqueName
 internal Unique name. More...
 
FBPropertyBool Animatable
 Read Write Property: Is the box animatable. More...
 
FBPropertyBool Live
 Read Write Property: Is live? More...
 
FBPropertyBool RecordMode
 Read Write Property: Is recording? 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...
 

Protected Member Functions

void InitializeModelGeometry ()
 Initialize the hand model geometry. More...
 
void VectorToModelPartAngle (kHandModelPart pPartIndex, FBVector3d &pVector)
 Bring the vector in parameter to a valid angle range of rotation for a given part of the hand model. More...
 
FBAnimationNodeGetModelRotationNode (kHandModelPart pPartIndex)
 Obtain the rotation animation node of a part of the hand model. 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...
 

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...
 
- 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

Base Glove class.

Definition at line 990 of file fbcore.h.

Member Enumeration Documentation

◆ kHandModelPart

Hand model parts.

Definition at line 995 of file fbcore.h.

Constructor & Destructor Documentation

◆ FBDeviceGlove()

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

Constructor.

Parameters
pNameName of device.
pObjectFor internal use only (default is NULL).

Member Function Documentation

◆ GetModelRotationNode()

FBAnimationNode* GetModelRotationNode ( kHandModelPart  pPartIndex)
protected

Obtain the rotation animation node of a part of the hand model.

Parameters
pPartIndexThe hand part.
Returns
The animation node of the given hand part.

◆ InitializeModelGeometry()

void InitializeModelGeometry ( )
protected

Initialize the hand model geometry.

You should set the LeftHand property prior to using this method, so that the geometry gets initialized correctly. Also call this function if you changed the value of LeftHand property.

◆ RecordingDoneAnimation()

virtual void RecordingDoneAnimation ( FBAnimationNode pAnimationNode)
overridevirtual

When recording, finish animation.

Parameters
pAnimationNodeAnimation node to write information to.

Reimplemented from FBDevice.

◆ RecordingInitAnimation()

virtual void RecordingInitAnimation ( FBAnimationNode pAnimationNode)
overridevirtual

When recording, initialize animation.

Parameters
pAnimationNodeAnimation node to read information from.

Reimplemented from FBDevice.

◆ VectorToModelPartAngle()

void VectorToModelPartAngle ( kHandModelPart  pPartIndex,
FBVector3d pVector 
)
protected

Bring the vector in parameter to a valid angle range of rotation for a given part of the hand model.

The input vector should have relative values between 0.0 (min) and 1.0 (max). The output vector is an euler local rotation vector with limits applied. This vector can then be used to constraint the rotation of the hand part model.

Parameters
pPartIndexThe hand part.
pVectorThe vector to modify.

Member Data Documentation

◆ Channels

Glove channels.

Definition at line 1107 of file fbcore.h.

◆ LeftHand

FBPropertyBool LeftHand

Read Write Property: Left or right hand glove.

Definition at line 1109 of file fbcore.h.


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