Definition of the class FBPlug and related enums and utility functions. More...
#include <kaydaradef.h>#include <object/i/icallback.h>#include <fbsdk/fbdefines.h>#include <fbsdk/fbscriptwrapper.h>#include <fbsdk/fbarray.h>Go to the source code of this file.
Classes | |
| class | FBPlug |
| Connections Basic Open Reality SDK Element. More... | |
| class | HdlFBPlug |
| Handler of FBPlug object Use this handler object to gracefully take care of dangling pointer problem. More... | |
| class | HdlFBPlugTemplate< T > |
Macros | |
| #define | FBSDK_DLL K_DLLIMPORT |
| Be sure that FBSDK_DLL is defined only once... | |
| #define | __FBClassImplementation(ThisComponent, pInternalClassId) |
| For internal use only. | |
| #define | __FBClassImplementationGroup(ThisComponent, pInternalClass) |
Typedefs | |
| typedef FBArrayTemplate< FBPlug * > | FBPlugList |
| typedef FBArrayTemplate<FBPlug*> FBPlugList; | |
Enumerations | |
| enum | FBConnectionAction { kFBRequestConnectSrc = 0 , kFBRequestConnectDst , kFBConnectSrc , kFBConnectDst , kFBConnectedSrc , kFBConnectedDst , kFBRequestDisconnectSrc , kFBRequestDisconnectDst , kFBDisconnectSrc , kFBDisconnectDst , kFBDisconnectedSrc , kFBDisconnectedDst , kFBBeginReplaceSrc , kFBEndReplaceSrc , kFBBeginReplaceDst , kFBEndReplaceDst , kFBReorderSrc , kFBReorderedSrc , kFBBeginChange , kFBEndChange , kFBConnectedOwner , kFBDisconnectOwner , kFBCandidate , kFBCandidated , kFBCandidateGlobal , kFBDetached , kFBDestroy , kFBSelect , kFBUnselect , kFBReselect , kFBRequestRename , kFBRename , kFBRenamed , kFBRequestPrefixRename , kFBPrefixRename , kFBPrefixRenamed , kFBDescription , kFBKeyingKey , kFBKeyingDeleteKey , kFBKeyingCandidate , kFBKeyingCurveChange , kFBKeyingCurveEndChange , kFBConnect = kFBConnectSrc , kFBConnected = kFBConnectedSrc , kFBDisconnect = kFBDisconnectSrc , kFBDisconnected = kFBDisconnectedSrc } |
| Possible actions when a notify plug event occurs. More... | |
| enum | FBConnectionType { kFBConnectionTypeNone , kFBConnectionTypeSystem } |
| Connection types available between plugs. More... | |
| enum | FBPlugModificationFlag { kFBPlugAllContent = 0 , kFBSelfDataModified = 1 << 8 , kFBContentDataModified = 1 << 9 , kFBAllDataModified = kFBSelfDataModified | kFBContentDataModified , kFBSelfKeyingModified = 1 << 10 , kFBContentKeyingModified = 1 << 11 , kFBAllKeyingModified = kFBSelfKeyingModified | kFBContentKeyingModified , kFBSelfStateModified = 1 << 12 , kFBContentStateModified = 1 << 13 , kFBAllStateModified = kFBSelfStateModified | kFBContentStateModified , kFBSelfConnectionSrcObjectModified = 1 << 14 , kFBSelfConnectionSrcPropertyModified = 1 << 15 , kFBSelfConnectionDstObjectModified = 1 << 16 , kFBSelfConnectionDstPropertyModified = 1 << 17 , kFBSelfConnectionModifiedMask = kFBSelfConnectionSrcObjectModified | kFBSelfConnectionSrcPropertyModified | kFBSelfConnectionDstObjectModified | kFBSelfConnectionDstPropertyModified , kFBContentConnectionModified = 1 << 18 , kFBAllConnectionModified = kFBSelfConnectionModifiedMask | kFBContentConnectionModified , kFBSelfCustomPropertyModified = 1 << 19 , kFBContentCustomPropertyModified = 1 << 20 , kFBAllCustomPropertyModified = kFBSelfCustomPropertyModified | kFBContentCustomPropertyModified , kFBSelfAllModifiedMask = kFBSelfDataModified | kFBSelfKeyingModified | kFBSelfStateModified | kFBSelfCustomPropertyModified | kFBSelfConnectionModifiedMask , kFBContentAllModifiedMask = kFBContentDataModified | kFBContentKeyingModified | kFBContentStateModified | kFBContentCustomPropertyModified | kFBContentConnectionModified , kFBAllModifiedMask = kFBSelfAllModifiedMask | kFBContentAllModifiedMask } |
| enum | FBPlugStatusFlag { kFBPlugStatusFlagNone = 0 , kFBOwnedByUndo = 1<<21 , kFBPlugStatusFlagMask = kFBOwnedByUndo } |
Functions | |
| FB_FORWARD (FBPlug) | |
| K_DLLIMPORT const char * | FBGetConnectionActionString (FBConnectionAction pAction) |
| K_DLLIMPORT FBPlugList * | FBCreatePlugList () |
| Create a FBPlugList object. | |
| K_DLLIMPORT void | FBDestroyPlugList (FBPlugList *pPlugList) |
| Delete a FBPlugList object. | |
| K_DLLIMPORT const char * | FBGetConnectionTypeString (FBConnectionType pType) |
| K_DLLIMPORT bool | FBConnect (FBPlug *pSrc, FBPlug *pDst, FBConnectionType pConnectionType=kFBConnectionTypeNone) |
| Request the connection two FBPlug objects. | |
| K_DLLIMPORT bool | FBDisconnect (FBPlug *pSrc, FBPlug *pDst) |
| Connect two FBPlug objects. | |
| K_DLLIMPORT FBPlug * | FBGetFBPlug (HIObject pObject, bool pAutoCreate=true) |
| Get the FBPlug from an Internal Object. | |
| K_DLLIMPORT HIObject | FBGetFBObject (HIObject pObject, bool pAutoCreate=false) |
| Get the SDK object from an Internal Object. | |
| template<class T > | |
| T * | FBCast (HIObject pObject, bool pAutoCreate=false) |
| Cast the SDK object using it's IObject interface into the proper class. | |
Definition of the class FBPlug and related enums and utility functions.
All the Open Reality objects that expose application objects will inherit from FBPlug.
Definition in file fbplug.h.
| #define __FBClassImplementation | ( | ThisComponent, | |
| pInternalClassId | |||
| ) |
For internal use only.
| #define __FBClassImplementationGroup | ( | ThisComponent, | |
| pInternalClass | |||
| ) |
| #define FBSDK_DLL K_DLLIMPORT |
| typedef FBArrayTemplate<FBPlug*> FBPlugList |
| enum FBConnectionAction |
Possible actions when a notify plug event occurs.
| enum FBConnectionType |
| enum FBPlugStatusFlag |
|
inline |
Cast the SDK object using it's IObject interface into the proper class.
| pObject | Object to get SDK object for. |
| pAutoCreate | Create object if it doesn't exist? (default = false) |
pObject. Definition at line 569 of file fbplug.h.
References FBGetFBObject().
| K_DLLIMPORT bool FBConnect | ( | FBPlug * | pSrc, |
| FBPlug * | pDst, | ||
| FBConnectionType | pConnectionType = kFBConnectionTypeNone |
||
| ) |
Request the connection two FBPlug objects.
| pSrc | Source plug. |
| pDst | Destination plug. |
| pConnectionType | Type of connection, taken from FBConnectionType. |
| K_DLLIMPORT FBPlugList * FBCreatePlugList | ( | ) |
Create a FBPlugList object.
This is to get around memory management issues when mixing debug and release runtime libraries on Windows. By using the FBCreateObjectList/FBDestroyObjectList duo of functions, you ensure that the memory used in the array is allocated, reallocated and freed in the same memory pool.
| K_DLLIMPORT void FBDestroyPlugList | ( | FBPlugList * | pPlugList | ) |
Delete a FBPlugList object.
| pPlugList | pointer to the object created with a call to FBCreatePlugList(). |
Connect two FBPlug objects.
| pSrc | Source plug. |
| pDst | Destination plug. |
| K_DLLIMPORT HIObject FBGetFBObject | ( | HIObject | pObject, |
| bool | pAutoCreate = false |
||
| ) |
Get the SDK object from an Internal Object.
| pObject | Object to get SDK object for. |
| pAutoCreate | Create object if it doesn't exist? (default = false) |
pObject. Referenced by FBCast(), FBCast(), and FBFindObjectsByName().
| K_DLLIMPORT FBPlug * FBGetFBPlug | ( | HIObject | pObject, |
| bool | pAutoCreate = true |
||
| ) |
Get the FBPlug from an Internal Object.
| pObject | Object to get SDK object for. |
| pAutoCreate | Create object if it doesn't exist? (default is true) |