fbcore.h File Reference


Detailed Description

fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h fbcore.h
Contains definitions for devices, boxes and models.

Definition in file fbcore.h.

#include <kaydaradef.h>
#include <fbsdk/fbcomponent.h>
#include <fbsdk/fbfbx.h>
#include <fbsdk/fbtime.h>
#include <fbsdk/fbdata.h>
#include <fbsdk/fbevaluateinfo.h>

Include dependency graph for fbcore.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


Classes

class   FBBox
  Box class. More...
class   FBHandle
  FBHandle class. More...
class   FBPropertyListHandle
  PropertyList: Handle. More...
class   FBPropertyListModelTemplate
  PropertyList: ModelTemplate. More...
class   FBPropertyListModelTemplateBinding
  PropertyList: ModelTemplateBinding. More...
class   FBModelTemplate
  Model template class. More...
class   FBPropertyListDevice
  PropertyList: Device More...
class   FBDeviceNotifyInfo
  Device Input and Output Notification information structure. More...
class   FBDeviceInstrument
  Instrument abstraction layer. More...
class   FBPropertyListDeviceInstrument
  List of instruments. More...
class   FBDevice
  Base Device class. More...
class   FBDeviceGlove
  Base Glove class. More...
class   FBDeviceGlove::GloveChannel
  Base GloveChannel. More...

Defines

#define  FBSDK_DLL   K_DLLIMPORT
  Be sure that FBSDK_DLL is defined only once.
#define  FBBoxDeclare(ClassName, Parent)
  Box declaration.
#define  FBBoxImplementation(ThisComponent)   FBClassImplementation( ThisComponent )
  Box implementation.
#define  FBDeviceDeclare(ClassName, Parent)
  Device declaration.
#define  FBDeviceImplementation(ThisComponent)   FBClassImplementation( ThisComponent )
  Device implementation.
#define  FBRegisterBox(UniqueNameStr, ClassName, FolderName, Label, Description, IconFilename)
  Register a box class.
#define  FBRegisterDevice(UniqueNameStr, ClassName, Label, Description, IconFilename)
  Register a device class.
#define  FBRegisterOnlineDevice(UniqueNameStr, ClassName, Label, Description, IconFilename)
  Register an online device class.

Typedefs

typedef HIObject(*  kFBObjectCreatorFnc )(HIObject pOwner, char *pName, void *pData)
 
Parameters:
pOwner  Object that own this new object

typedef class
K_DLLIMPORT
FBPropertyBaseList
< HFBAnimationNode > 
FBPropertyBaseListModelTemplateBinding
  typedef class FBSDK_DLL FBPropertyBaseList< HFBAnimationNode > FBPropertyBaseListModelTemplateBinding

Enumerations

enum   FBModelTemplateStyle {
   kFBModelTemplateNone,
   kFBModelTemplateNull,
   kFBModelTemplateMarker,
   kFBModelTemplateRoot,
   kFBModelTemplateSensor,
   kFBModelTemplateSkeleton,
   kFBModelTemplateCamera,
   kFBModelTemplateGeometry,
   kFBModelTemplateCameraInterest,
   kFBModelTemplateLight,
   kFBModelTemplateOptical
}
  Model template styles When creating model templates, this parameter will affect the actual model created (associated with the model template). More...
enum   FBDeviceSamplingMode {
   kFBHardwareTimestamp,
   kFBHardwareFrequency,
   kFBAutoFrequency,
   kFBSoftwareTimestamp
}
  Recording types. More...
enum   FBCommType {
   kFBCommTypeNone = 0,
   kFBCommTypeSerial = 1<<0,
   kFBCommTypeNetworkTCP = 1<<1,
   kFBCommTypeNetworkUDP = 1<<2,
   kFBCommTypeSharedMemory = 1<<3,
   kFBCommTypeSimulator = 1<<4,
   kFBCommTypeOther = 1<<5
}
  Communications type. More...

Define Documentation

#define FBBoxDeclare ( ClassName,
Parent   ) 

Value:

FBClassDeclare( ClassName,Parent ); \
  public: \
  ClassName(char * pName):Parent(pName) { FBClassInit; } \
  private:
Box declaration.
Parameters:
ClassName  Name of box class.
Parent  Parent class of ClassName.

Definition at line 90 of file fbcore.h.

#define FBBoxImplementation ( ThisComponent   )     FBClassImplementation( ThisComponent )

Box implementation.

Parameters:
ThisComponent  Name of box class to implement.

Definition at line 99 of file fbcore.h.

#define FBDeviceDeclare ( ClassName,
Parent   ) 

Value:

FBClassDeclare( ClassName,Parent ); \
  public: \
    ClassName(char * pName):Parent(pName) { FBClassInit; } \
  private:
Device declaration.
Parameters:
ClassName  Name of device class.
Parent  Parent class of ClassName.

Definition at line 106 of file fbcore.h.

#define FBDeviceImplementation ( ThisComponent   )     FBClassImplementation( ThisComponent )

Device implementation.

Parameters:
ThisComponent  Name of device class to implement.

Definition at line 115 of file fbcore.h.

#define FBRegisterBox ( UniqueNameStr,
ClassName,
FolderName,
Label,
Description,
IconFilename   ) 

Value:

HIObject RegisterBox##ClassName##Create( HIObject /*pOwner*/,char * pName,void * /*pData*/) \
    { \
      ClassName *Class = new ClassName(pName); \
        Class->mAllocated = true; \
        Class->UniqueName = UniqueNameStr; \
        if (Class->FBCreate()) { \
            return Class->GetHIObject(); \
        } else { \
            delete Class; \
            return NULL; \
        } \
    } \
\
    FBLibraryModule( ClassName )    \
    {\
        FBRegisterObject(ClassName##R1,"Boxes",UniqueNameStr,Description,RegisterBox##ClassName##Create,true, IconFilename );\
        FBRegisterObject(ClassName##R2,"Boxes/Functions/"FolderName,Label,Description,RegisterBox##ClassName##Create,true, IconFilename );\
        FBRegisterObject(ClassName##R3,"FbxStorable/Box",UniqueNameStr,Description,RegisterBox##ClassName##Create,true, IconFilename ); \
    }
Register a box class.
Parameters:
UniqueNameStr  Unique name of class.
ClassName  Name of box class.
FolderName  Directory structure within the application.
Label  Short description.
Description  Long description.
IconFilename  Name of the file containing the icon.

Definition at line 129 of file fbcore.h.

#define FBRegisterDevice ( UniqueNameStr,
ClassName,
Label,
Description,
IconFilename   ) 

Value:

HIObject RegisterDevice##ClassName##Create( HIObject /*pOwner*/,char * pName,void * /*pData*/) \
    { \
      ClassName *Class = new ClassName(pName); \
        Class->mAllocated = true; \
        Class->UniqueName = UniqueNameStr; \
        if (Class->FBCreate()) { \
            return Class->GetHIObject(); \
        } else { \
            delete Class; \
            return NULL; \
        } \
    } \
\
    FBLibraryModule( ClassName )    \
    {   \
        FBRegisterObject(ClassName##R1,"Boxes/Devices",Label,Description,RegisterDevice##ClassName##Create,true, IconFilename );\
        FBRegisterObject(ClassName##R2,"FbxStorable/Device",UniqueNameStr,Description,RegisterDevice##ClassName##Create,true, IconFilename ); \
    }
Register a device class.
Parameters:
UniqueNameStr  Unique name of class.
ClassName  Name of device class.
Label  Short description.
Description  Long description.
IconFilename  Name of the file containing the icon.

Definition at line 157 of file fbcore.h.

#define FBRegisterOnlineDevice ( UniqueNameStr,
ClassName,
Label,
Description,
IconFilename   ) 

Value:

HIObject RegisterDevice##ClassName##Create( HIObject /*pOwner*/,char * pName,void * /*pData*/) \
    { \
      ClassName *Class = new ClassName(pName); \
        Class->mAllocated = true; \
        Class->UniqueName = UniqueNameStr; \
        if (Class->FBCreate()) { \
            return Class->GetHIObject(); \
        } else { \
            delete Class; \
            return NULL; \
        } \
    } \
\
    FBLibraryModule( ClassName )    \
    {   \
        if( FBGetLicense() >= kFBLicenseOnline )    \
        {   \
            FBRegisterObject(ClassName##R1,"Boxes/Devices",Label,Description,RegisterDevice##ClassName##Create, true, IconFilename );\
            FBRegisterObject(ClassName##R2,"FbxStorable/Device",UniqueNameStr,Description,RegisterDevice##ClassName##Create, true, IconFilename ); \
        }   \
    }
Register an online device class.
Parameters:
UniqueNameStr  Unique name of class.
ClassName  Name of device class.
Label  Short description.
Description  Long description.
IconFilename  Name of the file containing the icon.

Definition at line 184 of file fbcore.h.

#define FBSDK_DLL   K_DLLIMPORT

Be sure that FBSDK_DLL is defined only once.

..

Definition at line 48 of file fbcore.h.


Typedef Documentation

typedef class K_DLLIMPORT FBPropertyBaseList< HFBAnimationNode > FBPropertyBaseListModelTemplateBinding

typedef class FBSDK_DLL FBPropertyBaseList< HFBAnimationNode > FBPropertyBaseListModelTemplateBinding

Definition at line 409 of file fbcore.h.

kFBObjectCreatorFnc
Parameters:
pOwner  Object that own this new object
Parameters:
pName  Name of the object
pData  Data put in the object

Definition at line 81 of file fbcore.h.


Enumeration Type Documentation

enum FBCommType

Communications type.

Different base types of communications. There is always the 'other' type in order to use another type of communication.

Enumerator:
kFBCommTypeNone  A non-communicating device.
kFBCommTypeSerial  Serial communications.
kFBCommTypeNetworkTCP  Network (TCP) device.
kFBCommTypeNetworkUDP  Network (UDP) device.
kFBCommTypeSharedMemory  Accessing shared memory.
kFBCommTypeSimulator  Software simulator.
kFBCommTypeOther  Any other type of communications.

Definition at line 655 of file fbcore.h.

enum FBDeviceSamplingMode

Recording types.

The different values for this will control the way the keys are added when the device is being recorded. There are four different types of recording keys for devices:

Enumerator:
kFBHardwareTimestamp  Device supplies timestamp.
kFBHardwareFrequency  Device is running at known, fixed frequency.
kFBAutoFrequency  Device is running at unknown, fixed frequency.
kFBSoftwareTimestamp  The software will timestamp packets as they arrive.

Definition at line 643 of file fbcore.h.

enum FBModelTemplateStyle

Model template styles When creating model templates, this parameter will affect the actual model created (associated with the model template).

Enumerator:
kFBModelTemplateNone  No style.
kFBModelTemplateNull  Null.
kFBModelTemplateMarker  Marker.
kFBModelTemplateRoot  Root (3 axes).
kFBModelTemplateSensor  Yellow magnetic sensor.
kFBModelTemplateSkeleton  Skeleton limb.
kFBModelTemplateCamera  Camera.
kFBModelTemplateGeometry  Generic geometry.
kFBModelTemplateCameraInterest  Camera interest.
kFBModelTemplateLight  Light.
kFBModelTemplateOptical  Optical model (not supported yet).

Definition at line 452 of file fbcore.h.


Please send us your comments about this page.