Sync'ed device class.
Base class for devices that are streaming data that will be accessed based upon a sync'ed stream (such as a genlock).
Definition at line 89 of file fbtracker.h.
#include <fbtracker.h>
Public Member Functions |
|
FBDeviceSync (char *pName, HIObject pObject=NULL) | |
Constructor. |
|
virtual void | PrintDebugAnimInfo (int pSync, FBDeviceSyncPacket *pSyncPacket, HFBEvaluateInfo pEvaluateInfo) |
Print to screen animation info. |
|
virtual void | PrintDebugIOInfo (FBDeviceSyncPacket *pSyncPacket, FBDeviceNotifyInfo &pDeviceNotifyInfo) |
Print to screen input/output info. |
|
virtual void | PrintDebugIONotifyInfo (FBDeviceNotifyInfo &pInfo, int pPacketCount) |
Print to screen input/output notification
info. |
|
virtual bool | FBCreate () |
Open Reality Creation function. |
|
virtual void | FBDestroy () |
Open Reality destruction function. |
|
virtual bool | AnimationNodeNotify (HFBAnimationNode pAnimationNode, HFBEvaluateInfo pEvaluateInfo) |
Notification function for animation thread.
|
|
virtual bool | FbxStore (HFBFbxObject pFbxObject, kFbxObjectStore pStoreWhat) |
Storage/Retrieval of information into the
FBX file format. |
|
virtual bool | FbxRetrieve (HFBFbxObject pFbxObject, kFbxObjectStore pStoreWhat) |
virtual bool | DeviceSyncAnimationNodeNotify (HFBAnimationNode pAnimationNode, HFBEvaluateInfo pEvaluateInfo, int pCorrectedSync)=0 |
Real-Time synchronous evaluation callback.
|
|
virtual void | PacketRegister (HFBDeviceSyncPacket pPacket) |
Register a packet in the buffer. |
|
virtual HFBDeviceSyncPacket | PacketLock () |
Lock a packet from the queue. |
|
virtual void | PacketUnlock (HFBDeviceSyncPacket pPacket, bool pValidPacket) |
Unlock a previously locked packet. |
|
virtual HFBDeviceSyncPacket | PacketFetch (int pRequestedSync) |
Fetch the data packet for the requested sync
count. |
|
virtual void | PacketRelease (HFBDeviceSyncPacket pPacket) |
Release a fetched packet. |
|
virtual HFBDeviceSyncPacket | PacketRemove (int pPacketIndex) |
Remove a packet from the packet queue.
|
|
virtual int | PacketGetCount () |
Get the number of packets in the queue.
|
|
Public Attributes |
|
FBPropertyInt | PacketBufferSize |
Property: Packet buffer
size(default=100). |
|
FBPropertyInt | SyncDelay |
Property: Synchronization delay (in
sync count units). |
|
FBPropertyBool | DebugInfo |
Property: Debugging Info? |
FBDeviceSync | ( | char * | pName, |
HIObject | pObject =
NULL |
||
) |
Constructor.
pName | Name of device sync. |
pObject | Internal use only(default=NULL). |
virtual void PrintDebugAnimInfo | ( | int | pSync, |
FBDeviceSyncPacket * | pSyncPacket, | ||
HFBEvaluateInfo | pEvaluateInfo | ||
) | [virtual] |
Print to screen animation info.
pSync | Application sync. |
pSyncPacket | Device sync packet. |
pEvaluateInfo | Information for evaluation. |
virtual void PrintDebugIOInfo | ( | FBDeviceSyncPacket * | pSyncPacket, |
FBDeviceNotifyInfo & | pDeviceNotifyInfo | ||
) | [virtual] |
Print to screen input/output info.
pSyncPacket | Device sync packet. |
pDeviceNotifyInfo | Device notification info. |
virtual void PrintDebugIONotifyInfo | ( | FBDeviceNotifyInfo & | pInfo, |
int | pPacketCount | ||
) | [virtual] |
Print to screen input/output notification info.
pInfo | Device sync packet. |
pPacketCount | Device notification info. |
virtual bool FBCreate | ( | ) | [virtual] |
Open Reality Creation function.
Reimplemented from FBDevice.
Reimplemented in FBDeviceCamera.
virtual void FBDestroy | ( | ) | [virtual] |
virtual bool AnimationNodeNotify | ( | HFBAnimationNode | pAnimationNode, |
HFBEvaluateInfo | pEvaluateInfo | ||
) | [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 FBDevice.
virtual bool FbxStore | ( | HFBFbxObject | pFbxObject, |
kFbxObjectStore | pStoreWhat | ||
) | [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 FBDevice.
Reimplemented in FBDeviceCamera.
virtual bool FbxRetrieve | ( | HFBFbxObject | pFbxObject, |
kFbxObjectStore | pStoreWhat | ||
) | [virtual] |
virtual bool DeviceSyncAnimationNodeNotify | ( | HFBAnimationNode | pAnimationNode, |
HFBEvaluateInfo | pEvaluateInfo, | ||
int | pCorrectedSync | ||
) | [pure virtual] |
Real-Time synchronous evaluation callback.
Note that this function must be overloaded to instanciate a synchronous device class.
pAnimationNode | Connector being pulled. |
pEvaluateInfo | Evaluation information structure. |
pCorrectedSync | Corrected sync value. |
Implemented in FBDeviceCamera.
virtual void PacketRegister | ( | HFBDeviceSyncPacket | pPacket | ) | [virtual] |
Register a packet in the buffer.
This will determine the buffer size (based on the number of packets that are added). Each packet should be allocated dynamically just before being added then registered to the device, which will then take complete ownership (and will destroy the packet itself).
pPacket | Newly allocated packet to register in the buffer. |
virtual HFBDeviceSyncPacket PacketLock | ( | ) | [virtual] |
Lock a packet from the queue.
Locks a packet for modification (write), to be used in the DeviceIONotify Function
virtual void PacketUnlock | ( | HFBDeviceSyncPacket | pPacket, |
bool | pValidPacket | ||
) | [virtual] |
Unlock a previously locked packet.
Unlocks a packet pPacket, indicating whether or not the packet is valid. If valid, the packet is kept in the buffer. Otherwise, the packet is listed as being free for the other write operations. To be used in DeviceIONotify() for unlocking a packet being read from the device.
pPacket | Packet to unlock. |
pValidPacket | Is the packet valid data or not. |
virtual HFBDeviceSyncPacket PacketFetch | ( | int | pRequestedSync | ) | [virtual] |
Fetch the data packet for the requested sync count.
Given a requested sync count, pRequestedSync, return the data packet that corresponds to this count in the queue. This routine will also protect the packet from write operations, requiring a call to PacketRelease when the current use is finished. To be used in AnimationNodeNotify() for locking a packet being read from the device.
pRequestedSync | Desired packet sync count. |
virtual void PacketRelease | ( | HFBDeviceSyncPacket | pPacket | ) | [virtual] |
Release a fetched packet.
Finish a read process of a specified packet pPacket. This will make the packet available to be read/modified by other processes. To be used in AnimationNodeNotify() for unlocking a packet being read from the device.
virtual HFBDeviceSyncPacket PacketRemove | ( | int | pPacketIndex | ) | [virtual] |
Remove a packet from the packet queue.
pPacketIndex | Index of packet to remove. |
virtual int PacketGetCount | ( | ) | [virtual] |
Get the number of packets in the queue.
Property: Packet buffer size(default=100).
Definition at line 188 of file fbtracker.h.
Property: Synchronization delay (in sync count units).
Definition at line 189 of file fbtracker.h.