42#include <kaydaradef.h>
47 #define FBSDK_DLL K_DLLIMPORT
53#ifdef FBSDKUseNamespace
54 namespace FBSDKNamespace {
352#ifdef FBSDKUseNamespace
MotionBuilder SDK base class.
Camera device base class.
FBPropertyString ModelTemplatePrefix
Property(RW): Model template prefix.
FBPropertyInt NumberOfInstruments
Property(RW): Number of instruments.
virtual void ProcessLensData(FBDeviceCameraPacket *pDataPacket)
Process the lens table data for this data packet.
virtual void FBDestroy() override
Open Reality destruction function.
FBPropertyBool UsingCustomInstruments
Property(RW): Using custom instruments?
virtual void RecordingDoneAnimation(FBAnimationNode *pAnimationNode) override
When recording, finish animation.
virtual bool DeviceCameraAnimationNodeNotify(FBEvaluateInfo *pEvaluateInfo, FBDeviceCameraPacket *pDstPacket, FBDeviceSyncPacket *pSrcPacket)
Evaluation engine callback for camera device.
virtual void DeviceIONotify(kDeviceIOs pAction, FBDeviceNotifyInfo &pDeviceNotifyInfo) override
Real-Time engine thread: Device I/O.
virtual bool FbxStore(FBFbxObject *pFbxObject, kFbxObjectStore pStoreWhat) override
Storage/Retrieval of information into the FBX file format.
virtual void DeviceCameraEvalData(FBDeviceNotifyInfo &pNotifyInfo)
I/O for camera device.
virtual bool DeviceSyncAnimationNodeNotify(FBAnimationNode *pAnimationNode, FBEvaluateInfo *pEvaluateInfo, int pCorrectedSync) override
Real-Time synchronous evaluation callback.
virtual bool ModelTemplateBindNotify(FBModel *pModel, int pIndex, FBModelTemplate *pModelTemplate) override
Model Template binding notification callback.
virtual bool FBCreate() override
Open Reality Creation function.
virtual bool LoadLensTables(const char *pFilename)
Load the lens lookup tables.
virtual bool DeviceCameraWriteData(FBEvaluateInfo *pEvaluateInfo)
Write data to camera connectors.
virtual void DeviceCameraRecordFrame(FBTime &pRecordTime, FBDeviceNotifyInfo &pNotifyInfo)
Record a frame of data to the FCurves for the camera device.
virtual void RecordingInitAnimation(FBAnimationNode *pAnimationNode) override
When recording, initialize animation.
FBDeviceCamera(const char *pName, HIObject pObject=NULL)
Constructor.
Instrument for a camera device.
FBPropertyDouble ManualFovX
Property(RW): Manual field of view X value.
FBPropertyBool LensTableLoaded
Property(R-): Has the lens table been loaded?
FBDeviceCameraInstrument(FBDevice *pDevice)
Constructor.
FBPropertyBool InvertZoom
Property(RW): Invert the zoom encoder values?
FBPropertyDouble NodalMultiplier
Property(RW): Multiplier for nodal offset.
virtual void ProcessLensData(FBDeviceCameraPacket *pDataPacket)
Process the lens table data for this data packet.
FBPropertyBool ManualCenterMode
Property(RW): Manually adjust the optical center?
FBPropertyDouble ManualCenterY
Property(RW): Manual optical center Y coordinate.
FBPropertyDouble AspectRatio
Property(RW): Aspect ratio for calculating the Field of View X value.
virtual bool FbxStore(FBFbxObject *pFbxObject, kFbxObjectStore pStoreWhat) override
Storage/Retrieval of information into the FBX file format.
FBPropertyBool ManualFovMode
Property(RW): In manual mode (not using encoder values to control zoom)?
FBPropertyDouble ManualCenterX
Property(RW): Manual optical center X coordinate.
FBPropertyVector3d TranslationOffset
Property(RW): Translation offset;
virtual bool LoadLensTables(const char *pFilename)
Load the lens lookup tables.
FBPropertyDeviceCameraPacket RecordPacket
Property(RW): Used as a buffer to contain the record state of the instrument, use to create the keys ...
FBPropertyVector3d RotationOffset
Property(RW): Rotation offset.
FBPropertyString LensCalibrationFilename
Property(R-): Lens calibration filename.
FBPropertyDouble ZoomMultiplier
Property(RW): Filmback multiplier.
FBPropertyBool LensFovInDegrees
Property(RW): Is FOV in table in degrees (false)
virtual void InstrumentRecordFrame(FBTime pRecordTime, FBDeviceNotifyInfo &pNotifyInfo) override
Record the data to the function curves for the instrument.
FBPropertyDouble ManualFovY
Property(RW): Manual field of view Y value.
virtual bool InstrumentWriteData(FBEvaluateInfo *pEvaluateInfo) override
Write data to instrument's connectors.
FBPropertyDeviceCameraPacket Packet
Property(RW): Used as a buffer to contain the current state of the instrument, use to put data in con...
FBPropertyBool InvertFocus
Property(RW): Invert the focus encoder values?
FBPropertyVector3d Position
Property: Position of camera.
FBDeviceCameraPacket()
Constructor.
FBPropertyDouble Focus
Property: Focus encoder value (relative).
FBPropertyVector3d Rotation
Property: Orientation of camera.
FBPropertyVector2d OpticalCenter
Property: Optical Center of camera lens.
FBPropertyDouble Zoom
Property: Zoom encoder value.
FBPropertyVector3d Offset
Property: Camera offset.
FBPropertyTime Time
Property: Time of packet.
FBPropertyVector2d FieldOfView
Property: Field of View (X,Y) of camera lens.
kDeviceIOs
Types of I/O for device.
Instrument abstraction layer.
Device Input and Output Notification information structure.
virtual bool AnimationNodeNotify(FBAnimationNode *pAnimationNode, FBEvaluateInfo *pEvaluateInfo) override
Notification function for animation thread.
FBPropertyBool DebugInfo
Property: Debugging Info?
virtual bool DeviceSyncAnimationNodeNotify(FBAnimationNode *pAnimationNode, FBEvaluateInfo *pEvaluateInfo, int pCorrectedSync)=0
Real-Time synchronous evaluation callback.
FBPropertyInt PacketBufferSize
Property: Packet buffer size(default=100).
virtual void FBDestroy() override
Open Reality destruction function.
virtual void PacketRelease(FBDeviceSyncPacket *pPacket)
Release a fetched packet.
virtual FBDeviceSyncPacket * PacketRemove(int pPacketIndex)
Remove a packet from the packet queue.
virtual void PacketRegister(FBDeviceSyncPacket *pPacket)
Register a packet in the buffer.
virtual FBDeviceSyncPacket * PacketLock()
Lock a packet from the queue.
virtual bool FbxStore(FBFbxObject *pFbxObject, kFbxObjectStore pStoreWhat) override
Storage/Retrieval of information into the FBX file format.
FBPropertyInt SyncDelay
Property: Synchronization delay (in sync count units).
virtual void PrintDebugIOInfo(FBDeviceSyncPacket *pSyncPacket, FBDeviceNotifyInfo &pDeviceNotifyInfo)
Print to screen input/output info.
virtual FBDeviceSyncPacket * PacketFetch(int pRequestedSync)
Fetch the data packet for the requested sync count.
virtual bool FBCreate() override
Open Reality Creation function.
virtual void PacketUnlock(FBDeviceSyncPacket *pPacket, bool pValidPacket)
Unlock a previously locked packet.
virtual int PacketGetCount()
Get the number of packets in the queue.
virtual void PrintDebugAnimInfo(int pSync, FBDeviceSyncPacket *pSyncPacket, FBEvaluateInfo *pEvaluateInfo)
Print to screen animation info.
virtual void PrintDebugIONotifyInfo(FBDeviceNotifyInfo &pInfo, int pPacketCount)
Print to screen input/output notification info.
FBDeviceSync(const char *pName, HIObject pObject=NULL)
Constructor.
FBPropertyInt OriginalSync
Property: Sync count for packet (from Application).
FBDeviceSyncPacket()
Constructor.
FBPropertyInt CorrectedSync
Property: Corrected sync count (from Sync queue).
FBPropertyInt DeviceSync
Property: Sync count for packet (from Device).
AnimationNodeNotify evaluation information.
Property class: const char * (String).
#define __FBClassDeclare(Name, Parent)
For internal use only.
#define FBSDK_DLL
Be sure that FBSDK_DLL is defined only once...
Contains definitions for devices, boxes and models.
class K_DLLIMPORT FBPropertyBase< int, kFBPT_int > FBPropertyInt
Property: int
class K_DLLIMPORT FBPropertyBase< FBVector3d, kFBPT_Vector3D > FBPropertyVector3d
FBPropertyVector3d type definition.
class K_DLLIMPORT FBPropertyBase< bool, kFBPT_bool > FBPropertyBool
Property: bool
class K_DLLIMPORT FBPropertyBase< FBTime, kFBPT_Time > FBPropertyTime
Property: FBTime
class K_DLLIMPORT FBPropertyBase< FBVector2d, kFBPT_Vector2D > FBPropertyVector2d
FBPropertyVector2d type definition.
#define FB_DEFINE_COMPONENT(DllTag, Type)
Define a component and give it the ability to be a property.
class K_DLLIMPORT FBPropertyBase< double, kFBPT_double > FBPropertyDouble
Property: double
FBTimeMode
Different time modes available.
K_DLLIMPORT FBTimeMode FBGetSyncTimeMode()
Returns the time mode for the current system sync.
kFbxObjectStore
Description of the different store/retrieve passes of the FBX format.
#define __FB_FORWARD(ClassName)
Forwarding of class and typedef declaration.