1 #ifndef __FBPROPERTIES_H__
2 #define __FBPROPERTIES_H__
45 #include <kaydaradef.h>
51 #define FBSDK_DLL K_DLLIMPORT
62 #include <fbsdk/fbevaluateinfo.h>
64 K_FORWARD( KEventBase );
66 K_FORWARD( KProperty );
67 K_FORWARD( KEvaluationProperty );
68 K_FORWARD( KDataType );
69 K_FORWARD( IFBObject );
70 K_FORWARD( IRegister );
72 #ifdef FBSDKUseNamespace
73 namespace FBSDKNamespace {
120 kFBPropertyFlagNotSet = 0,
122 kFBPropertyFlagForceStaticProperty = (1 << 1),
123 kFBPropertyFlagDisableProperty = (1 << 2),
126 kFBPropertyFlagAnimated = (1 << 4),
128 kFBPropertyFlagReadOnly = (1 << 6),
129 kFBPropertyFlagNotUserDeletable = (1 << 7),
141 #define FB_DEFINE_COMPONENT( DllTag, Type ) \
143 typedef class DllTag FBPropertyBase< FB##Type*,kFBPT_object > FBPropertyBase##Type; \
144 typedef class DllTag FBPropertyBaseComponent< FB##Type* > FBProperty##Type
150 #define FB_DEFINE_ENUM( DllTag, Type ) \
151 typedef class DllTag FBPropertyBaseEnum< enum FB##Type > FBProperty##Type;
156 #define FB_DEFINE_CLASS_ENUM( EnumName ) \
157 typedef class FBPropertyBaseEnum< enum __FBClassType::e##EnumName > Property##EnumName;
163 #define FB_DEFINE_LIST( DllTag, Type ) \
164 typedef class DllTag FBPropertyBaseList< FB##Type* > FBPropertyBaseList##Type;
208 #ifndef DOXYGEN_SHOULD_SKIP_THIS
210 IObject_Declare(
override);
213 FBProperty* InitInternal( KProperty* pProperty );
216 KProperty* GetInternal()
const;
219 void* GetValuePtr()
const;
228 void SetInternal( KProperty* pInternal );
315 virtual bool IsAnimatable();
316 bool IsInternal()
const;
317 bool IsUserProperty();
318 bool IsTextureConnectableProperty();
319 bool IsReferenceProperty();
395 void SetMinMax(
double pMin,
double pMax,
bool pForceMinClamp =
false,
bool pForceMaxClamp =
false );
401 void SetMin(
double pMin,
bool pForceMinClamp =
false );
407 void SetMax(
double pMax,
bool pForceMaxClamp =
false );
489 HIObject lProperty = pProperty ?
FBGetFBObject(pProperty->GetHIObject(), pAutoCreate) : NULL;
491 return (T*)lProperty;
517 #ifndef DOXYGEN_SHOULD_SKIP_THIS
519 HIRegister mParentRegister;
554 virtual void Add ( HICallback pOwner, kICallbackHandler pHandler );
555 virtual void Remove ( HICallback pOwner, kICallbackHandler pHandler );
568 DataFBPropertyEvent* mLocalPtr;
575 virtual void Add ( HICallback pOwner, kICallbackHandler pHandler );
576 virtual void Remove ( HICallback pOwner, kICallbackHandler pHandler );
583 virtual void Add ( HICallback pOwner, kICallbackHandler pHandler );
584 virtual void Remove ( HICallback pOwner, kICallbackHandler pHandler );
591 virtual void Add ( HICallback pOwner, kICallbackHandler pHandler );
592 virtual void Remove ( HICallback pOwner, kICallbackHandler pHandler );
599 virtual void Add ( HICallback pOwner, kICallbackHandler pHandler );
600 virtual void Remove ( HICallback pOwner, kICallbackHandler pHandler );
607 virtual void Add ( HICallback pOwner, kICallbackHandler pHandler );
608 virtual void Remove ( HICallback pOwner, kICallbackHandler pHandler );
615 virtual void Add ( HICallback pOwner, kICallbackHandler pHandler );
616 virtual void Remove ( HICallback pOwner, kICallbackHandler pHandler );
625 #ifndef DOXYGEN_SHOULD_SKIP_THIS
626 void (* Set)(
void *, tType);
627 tType (* Get)(
void *);
654 inline FBPropertyBase *
Init(
void* pParent,
const char *pName,tType (* pGet)(
void *)=NULL,
void (* pSet)(
void *,tType)=NULL )
668 inline void operator=(tType pValue) { SetData( &pValue ); }
683 inline operator tType()
const { tType Value; GetData( &Value,
sizeof(Value) );
return Value; }
695 if(IsInternal() && GetValuePtr())
697 *(tType*)GetValuePtr() = pValue;
706 if(IsInternal() && GetValuePtr())
708 return *(tType*)GetValuePtr();
728 *((tType*)pData) = (*Get)(mParent);
730 else if (IsInternal())
736 assert(Get != NULL || IsInternal());
737 *((tType*)pData) = (tType)0;
743 inline virtual void SetData(
void* pData)
override
747 (*Set)( mParent,*(tType*)pData );
749 else if (IsInternal())
755 assert( Set != NULL || IsInternal() );
767 #ifndef DOXYGEN_SHOULD_SKIP_THIS
769 static const char *mStrings[];
782 { operator=((tType)pValue ); }
789 inline void operator=(tType pValue) { this->SetData( &pValue ); }
796 inline operator tType()
const { tType Value; this->GetData( &Value,
sizeof(Value) );
return Value; }
798 virtual const char*
EnumList(
int pIndex )
override
800 if( FBPropertyBaseEnum::IsInternal() )
812 return mStrings[pIndex];
816 assert(mStrings[0] || FBPropertyBaseEnum::IsInternal());
835 while ((tmpstr=EnumList( count ))!=NULL) {
836 if (strcmp(tmpstr,pString)==0) {
919 virtual int Add( tType pItem )=0;
937 inline virtual int Find( tType pItem )
940 for(Index=0; Index<GetCount(); Index++ )
942 if(
operator[](Index)==pItem )
956 int Index = Find( pItem );
968 inline virtual tType
GetAt(
int pIndex)
970 return operator[](pIndex);
1032 virtual const char *
GetAt(
int pIndex );
1061 virtual int Add(
const char *S,kReference pRef = 0 );
1082 virtual void InsertAt(
int pIndex,
const char *S,kReference pRef = 0 );
1089 virtual bool SetAt(
int pIndex,
const char *pString );
1183 void RemoveFromCache( KProperty* pProperty );
1190 FBProperty* FindInCache( KProperty* pProperty );
1202 void SetParent( HIObject pParent );
1204 #ifndef DOXYGEN_SHOULD_SKIP_THIS
1259 #define FBImplementPropertyComponent( DllTag, Type ) \
1260 template class DllTag FBSDKNamespaceFunc(FBPropertyBase)< FB##Type*,kFBPT_object >; \
1261 template class DllTag FBSDKNamespaceFunc(FBPropertyBaseComponent)< FB##Type* >;
1267 #define FBImplementPropertyEnum( DllTag, Type ) \
1268 template class DllTag FBSDKNamespaceFunc(FBPropertyBaseEnum)< enum FB##Type >
1269 #define FBImplementClassPropertyEnum( DllTag, Class, EnumName ) \
1270 template class DllTag FBSDKNamespaceFunc(FBPropertyBaseEnum)< enum Class::E##EnumName >
1276 #define FBImplementPropertyList( DllTag, Type ) \
1277 template class DllTag FBSDKNamespaceFunc(FBPropertyBaseList) < FB##Type* >
1289 inline void operator=(
const char* pValue) { SetData( &pValue ); }
1296 inline operator const char* ()
const {
char* Value; GetData( &Value,
sizeof(Value) );
return Value; }
1298 inline bool operator==(
const char* pValue)
const {
char* Value; GetData( &Value,
sizeof(Value) );
return (Value == pValue) || (strcmp(Value, pValue) == 0); }
1299 inline bool operator!=(
const char* pValue)
const {
return ! operator==(pValue); }
1375 #define FBPropertyInit( Param,Type,PropName,Get,Set ) \
1377 PropertyAdd(PropName.Init( (void*)Param,#PropName,(Type (*)(void *))Get,(void (*)(void *,Type))Set )); \
1384 #define FBPropertyInitList( Param,PropName ) \
1386 PropertyAdd(PropName.Init( Param,#PropName )); \
1393 #define FBPropertyInitStringList( Param,PropName ) \
1395 PropertyAdd(PropName.Init( Param, #PropName )); \
1404 #define FBPropertyInitEvent( Param,Type,SubType,PropName ) \
1406 PropertyAdd(PropName.Init( this, IQ(Param,IRegister),#PropName,Type,SubType )); \
1413 #define FBPropertyInitEventGlobal( GlobalEventName,PropName ) \
1415 PropertyAdd(PropName.InitGlobal( #PropName,GlobalEventName )); \
1419 #define FBPropertyInitInternal( Parent, PropName, MBProperty ) \
1421 PropertyAdd(PropName.InitInternal( MBProperty ));\
1425 #define FBPropertyInitInternalEnum( Param,Type,PropName,MBProperty,Get,Set ) \
1427 PropName.InitInternal( MBProperty ); \
1428 PropertyAdd(PropName.Init( (void*)Param,#PropName,(Type (*)(void *))Get,(void (*)(void *,Type))Set )); \
1438 #define FBPropertyPublish( Parent,Prop,PropName,Get,Set ) \
1440 PropertyAdd(Prop.CreateInternal( Parent,PropName,(fbExternalGetSetHandler)Get,(fbExternalGetSetHandler)Set )); \
1449 #define FBPropertyInitTextureConnectable( Parent,Prop,PropName ) \
1451 PropertyAdd(Prop.CreateTextureConnectable( Parent,PropName )); \
1493 #ifndef DOXYGEN_SHOULD_SKIP_THIS
1714 operator tType()
const
1792 #ifndef DOXYGEN_SHOULD_SKIP_THIS
1794 static const char *mStrings[];
1822 inline operator tType()
const { tType Value; GetData( &Value,
sizeof(Value) );
return Value; }
1836 else if(mStrings[0])
1838 return mStrings[pIndex];
1842 assert(mStrings[0] || IsInternal());
1860 const char * tmpstr;
1861 while ((tmpstr=EnumList( Count ))!=NULL) {
1862 if (strcmp(tmpstr,pString)==0) {
1877 #ifdef FBSDKUseNamespace
Template class to contain an array of items.
A box is a fundamental building block in the application architecture.
MotionBuilder SDK base class.
AnimationNodeNotify evaluation information.
Connections Basic Open Reality SDK Element.
Property: Action Action property to trigger function.
FBPropertyAction()
Constructor.
~FBPropertyAction()
Destructor.
Animatable property base class.
bool IsFocused()
Is the property focused (keyable).
FBPropertyAnimatable()
Constructor.
void SetGlobalCandidate(void *pData, int pSize, FBEvaluateInfo *pEvalInfo=NULL)
Set the global candidate (useful for model TRS).
int GetDataSize() const
Get the data size (number of values) for the connector.
bool HasSomethingMuted() const
HasSomethingMuted.
void SetMemberMuted(int pIndex, bool pMuted)
SetMemberMuted.
bool SetFocusChild(int pIndex, bool pState)
Set the focus (keyable) state of child component.
const char * GetDataTypeName()
Get the property datatype name.
FBAnimationNode * GetAnimationNode(FBTake *pTake=NULL)
Get the animation node for the property.
virtual KDataType * GetDataType() override
Get the property datatype pointer.
virtual void SetData(void *pData) override
Set the value of the property, passing the type as an argument.
void SetCandidate(void *pData, int pSize, FBEvaluateInfo *pEvalInfo=NULL)
Set the candidate.
void Key()
Key the property.
bool SetColor(const FBColor &pColor, int pIndex)
Set the color of the FCurves for the property.
virtual ~FBPropertyAnimatable()
Destructor.
bool IsFocusedChild(int pIndex)
Get the focus (keyable) state of child component.
bool ResetColor(int pIndex)
Revert the FCurves to their default color.
virtual bool IsAnimatable() override
Certify that the property is animatable.
bool AllowsMuting() const
AllowsMuting.
void SetMuted(bool pMuted)
SetMuted.
bool IsMemberMuted(int pIndex) const
IsMemberMuted.
bool IsAnimated()
Is the property animated.
void SetFocus(bool pState)
Set the property's focus (keyable) state.
void KeyAt(FBTime pTime)
Key the property at time (t).
virtual void GetData(void *pData, int pSize, FBEvaluateInfo *pEvalInfo=NULL) const override
Get the value of a property.
FBColor GetColor(int pIndex)
Get the color of a particular FCurve of the property.
FBBox * GetBox()
Get the owner box.
void KeyRemoveAt(FBTime pTime)
Remove the key at time (t).
void SetAnimated(bool pState, bool pCheckLocked=false)
Set the animation state of the property.
void Destroy()
Destruction function, for internal connectors.
FBPropertyAnimatable * Init(FBBox *pOwner, const char *pName, const char *pType, double *pInit)
Initialization function (custom).
bool IsMuted() const
IsMuted.
virtual const char * EnumList(int pIndex) override
Return the string of an enum value.
~FBPropertyBaseAnimatableEnum()
Destructor.
FBPropertyBaseAnimatableEnum(const FBPropertyBaseAnimatableEnum< tType > &pValue)
FBPropertyBaseAnimatableEnum.
virtual bool SetString(const char *pString) override
Set string as enum value.
virtual const char * AsString(FBDataAsStringFlag pFlag=kFBDataAsStringUI) override
Get as string.
void operator=(tType pValue)
Overloaded = operator.
FBPropertyBaseAnimatableEnum()
Constructor.
tType ValueType
Property Value Type.
FBPropertyBaseAnimatable()
Constructors.
~FBPropertyBaseAnimatable()
Destructor.
void operator=(tType pValue)
Overloaded = operator.
virtual FBPropertyType GetPropertyType() override
Get the property's type.
FBPropertyBaseComponent()
Constructor.
void operator=(tType pValue)
Overloaded = operator.
FBPropertyBaseComponent(const FBPropertyBaseComponent< tType > &pValue)
Constructor.
~FBPropertyBaseComponent()
Destructor.
int * TypeInfo
< Type information.
virtual const char * EnumList(int pIndex) override
Return the string of an enum value.
virtual bool SetString(const char *pString) override
Set enum value by equivalent string.
virtual const char * AsString(FBDataAsStringFlag pFlag=kFBDataAsStringUI) override
Get as string.
void operator=(tType pValue)
Overloaded = operator.
FBPropertyBaseEnum(const FBPropertyBaseEnum< tType > &pValue)
FBPropertyBaseEnum.
~FBPropertyBaseEnum()=default
Destructor.
FBPropertyBaseEnum()=default
Constructor.
tType GetPropertyValue()
Get the value of the internal property.
FBPropertyBase * Init(void *pParent, const char *pName, tType(*pGet)(void *)=NULL, void(*pSet)(void *, tType)=NULL)
Initialization function.
tType ValueType
Property Value Type.
virtual void SetData(void *pData) override
Set value.
FBPropertyBase(const FBPropertyBase< tType, pPT > &pValue)
Constructor.
void operator=(const FBPropertyBase< tType, pPT > &pProperty)
Overloaded = operator.
FBPropertyBase()
Constructor.
void operator=(tType pValue)
Overloaded = operator.
virtual void SetPropertyValue(tType pValue)
Set the value of the internal property.
~FBPropertyBase()
Destructor.
virtual void GetData(void *pData, int pSize, FBEvaluateInfo *pEvalInfo=NULL) const override
Get value.
virtual bool IsReadOnly() override
Is this class read-only? If there is an existing set function, this class is read/write,...
virtual FBPropertyType GetPropertyType() override
Get the property's type.
virtual int Find(tType pItem)
Locate a property in the list.
~FBPropertyBaseList()
Destructor.
virtual tType operator[](int pIndex)=0
[] operator overload.
virtual int Remove(tType pItem)
Remove pItem from the list.
FBPropertyBaseList()
Constructor.
FBPropertyBaseList(HIObject pParent, const char *pName)
Constructor.
virtual int Add(tType pItem)=0
Add a property to the list.
virtual tType GetAt(int pIndex)
Get a property at pIndex.
virtual int GetCount()=0
Get the number of properties in the list.
virtual bool IsList()
Is this a list?
FBProperty * Init(void *pParent, const char *pName)
Initialization function.
void RemoveAll()
Remove all properties from the list.
FBPropertyBasicList()
Constructor.
virtual void RemoveAt(int pIndex)=0
Remove property at pIndex.
FBPropertyBasicList(HIObject pParent, const char *pName)
Constructor.
PropertyEvent: Global ConnectionDataNotify event.
virtual void Add(HICallback pOwner, kICallbackHandler pHandler)
Add/Remove a callback.
PropertyEvent: Global KeyingNotify event.
virtual void Add(HICallback pOwner, kICallbackHandler pHandler)
Add/Remove a callback.
PropertyEvent: Global ConnectionNotify event.
virtual void Add(HICallback pOwner, kICallbackHandler pHandler)
Add/Remove a callback.
PropertyEvent: Global ConnectionStateNotify event.
virtual void Add(HICallback pOwner, kICallbackHandler pHandler)
Add/Remove a callback.
PropertyEvent: Base event class.
FBPropertyEvent * InitGlobal(const char *pName, const char *pGlobalEventName)
Property initialization function, for global events.
virtual ~FBPropertyEvent()
Destructor.
virtual void Add(HICallback pOwner, kICallbackHandler pHandler)
Add/Remove a callback.
FBPropertyEvent * Init(FBComponent *pComponent, HIRegister pParent, const char *pName, int pType, int pSubType=K_INT_MAX)
Property initialization function.
FBPropertyEvent()
Constructor.
virtual void InvalidateParent()
Invalidate parent, removing internal register parent.
virtual FBPropertyType GetPropertyType() override
Get the property's type.
PropertyEvent: UI idle event.
virtual void Add(HICallback pOwner, kICallbackHandler pHandler)
Add/Remove a callback.
PropertyEvent: Video Frame Rendering Event
virtual void Add(HICallback pOwner, kICallbackHandler pHandler)
Add/Remove a callback.
Property: Base property class.
virtual const char * AsString(FBDataAsStringFlag pFlag=kFBDataAsStringUI)
Get the property value as a string.
FBProperty * GetReferencedProperty()
Get the referenced property, in the case of this property is a reference property (see the IsReferenc...
const char * GetName()
Get the property's name.
virtual FBPropertyType GetPropertyType()
Get the property's type.
bool OriIsAnimated() const
Get the property original animated flag status (before any modification)
bool IsAnimated() const
Get the property animated flag status.
int GetSubMemberCount() const
GetSubMemberCount.
bool HasSomethingLocked() const
HasSomethingLocked.
virtual const char * EnumList(int pIndex)
Return the string of an enum value.
bool AllowsLocking() const
AllowsLocking.
FBStringList * GetEnumStringList(bool pCreateIt=false)
String list for enum properties.
bool IsTemporaryProperty()
Indicate if a property was created on retrieve because it didn't exist.
int AsInt()
Get the property as an integer.
const char * OriValueAsString()
Get the property original value (before any modification) as string.
bool IsObjectList()
Indicate if is an instance of FBPropertyListObject.
void SetMin(double pMin, bool pForceMinClamp=false)
SetMin.
virtual bool SetString(const char *pString)
Set the property value from a string.
virtual bool IsList()
Verify if property is of this type.
void SetName(const char *pName)
Set the property's name.
bool IsLocked() const
IsLocked.
bool GetPropertyFlag(FBPropertyFlag pFlag)
GetPropertyFlag.
void SetLocked(bool pLocked)
SetLocked.
void SetEnable(bool pValue)
Set property enable status.
void SetMinMax(double pMin, double pMax, bool pForceMinClamp=false, bool pForceMaxClamp=false)
SetMinMax.
bool AcceptTemporaryProperty(const char *pEnumList[]=NULL, fbExternalGetSetHandler pGet=NULL, fbExternalGetSetHandler pSet=NULL)
Accept a temporary property as a dynamic property.
virtual void GetData(void *pData, int pSize, FBEvaluateInfo *pEvalInfo=NULL) const
Get the value of a property.
bool IsMaxClamp()
Indicate if maximum value clamping will be applied on user input value.
bool IsMinClamp()
Indicate if minimum value clamping will be applied on user input value.
FBPropertyFlag GetPropertyFlags()
GetPropertyFlags.
void ModifyPropertyFlag(FBPropertyFlag pFlag, bool pValue)
ModifyPropertyFlag.
void NotifyEnumStringListChanged()
Notify system that the enum list was modified.
virtual KDataType * GetDataType()
Get the property datatype pointer.
void * GetParent()
Get the parent of the object.
bool SetInt(int pInt)
Set the property from an integer.
virtual bool IsReadOnly()
Is property read-only?
bool IsMemberLocked(int pIndex) const
IsMemberLocked.
const char * GetPropertyTypeName()
Get the property's type name.
void SetMax(double pMax, bool pForceMaxClamp=false)
SetMax.
void SetMemberLocked(int pIndex, bool pLocked)
SetMemberLocked.
virtual void SetData(void *pData)
Set the value of the property, passing the type as an argument.
int Add(FBProperty *Property)
Add a property to the property manager.
FBPropertyManager()
Constructor.
void FindPropertiesByName(const char *pPropertyNamePattern, FBArrayTemplate< FBProperty * > &pPropList, bool pMultilangLookup=true)
This function will query the property list for properties fulfilling a particular name pattern.
FBProperty * Find(const char *pPropertyName, bool pMultilangLookup=true)
Find a property, based on its name.
int GetCount()
Get the number of properties stored in property manager.
int Remove(FBProperty *pProperty)
Remove a property.
FBProperty * operator[](int pIndex)
Overloaded [] operator.
~FBPropertyManager()
Destructor.
Property class: const char * (String).
virtual void SetPropertyValue(const char *pValue) override
Set the value of the internal property.
void operator=(const char *pValue)
Overloaded = operator.
virtual void RemoveAt(int pIndex)
Remove an entry at pIndex.
FBPropertyStringList()
Constructor.
virtual void InsertAt(int pIndex, const char *S, kReference pRef=0)
Insert an entry at pIndex.
kReference GetReferenceAt(int pIndex)
Get the reference at pIndex.
virtual void Clear()
Clear the list (remove all the items).
int Find(const char *S)
Find the index of a string.
virtual bool SetString(const char *pString) override
Set string for list.
virtual const char * GetAt(int pIndex)
Get the string stored at pIndex.
virtual bool IsList() override
Is this class a list?
virtual const char * AsString(FBDataAsStringFlag pFlag=kFBDataAsStringUI) override
Get as string.
virtual int IndexOf(const char *S)
Get the index of a string.
int Find(kReference pRef)
Find the index of a reference.
virtual ~FBPropertyStringList()
Destructor.
int GetCount()
Get the number of items in the list.
virtual int Add(const char *S, kReference pRef=0)
Add a string to the list.
const char * operator[](int pIndex)
[] operator overload.
void SetReferenceAt(int pIndex, kReference pRef)
Set reference at pIndex.
int Remove(const char *S)
Remove a string from the list.
FBPropertyStringList * Init(FBComponent *pComponent, const char *pName)
Property initialization function.
virtual bool SetAt(int pIndex, const char *pString)
Set the string at pIndex.
virtual FBPropertyType GetPropertyType() override
Get the property's type.
void Sort()
Sort list ascending.
A take is a container for animation in a scene.
Visual Component base class.
A template class for arrays.
#define FBClassDeclare(Name, Parent)
Class declaration.
Definition of the class FBPlug and related enums and utility functions.
K_DLLIMPORT HIObject FBGetFBObject(HIObject pObject, bool pAutoCreate=false)
Get the SDK object from an Internal Object.
class K_DLLIMPORT FBPropertyBaseAnimatable< FBVector3d, kFBPT_Vector3D > FBPropertyAnimatableVector3d
FBPropertyAnimatableVector3D type definition.
#define FBSDK_DLL
Be sure that FBSDK_DLL is defined only once...
FBPropertyFlag
Available flags for FBProperty objects.
@ kFBDrivenSetByMain
Driven property can be modified, valid only when the main property is modified.
@ kFBLoadedUserProperty
This property is loaded from file.
@ kFBPropertyFlagSlavedProperty
@ kFBDynamicHidden
This flag is used to show/hide the property in the propertiview. When turn on/ff DynamicHidden flag,...
@ kFBPropertyFlagDrivenProperty
This is property is connected and driven by other same type of main property, and it always ask value...
@ kFBPropertyFlagHideProperty
This flag is used to show/hide the property in the propertiview. However, when turn on/off HideProper...
@ kFBPropertyFlagNotSavable
Should not be saved to or loaded from an FBX file.
@ kFBValueAllocated
The value has been allocated and must be delete in destructor.
class K_DLLIMPORT FBPropertyBaseAnimatable< unsigned long long, kFBPT_uint64 > FBPropertyAnimatableUInt64
FBPropertyAnimatableUInt64 type definition.
class K_DLLIMPORT FBPropertyBase< kReference, kFBPT_kReference > FBPropertykReference
Property: kReference
class K_DLLIMPORT FBPropertyBase< int, kFBPT_int > FBPropertyInt
Property: int
class K_DLLIMPORT FBPropertyBase< FBProperty *, kFBPT_Reference > FBPropertyReference
Property: FBProperty *
class K_DLLIMPORT FBPropertyBaseAnimatable< bool, kFBPT_Action > FBPropertyAnimatableAction
FBPropertyAnimatableAction type definition.
class K_DLLIMPORT FBPropertyBaseAnimatable< FBColor, kFBPT_ColorRGB > FBPropertyAnimatableColor
FBPropertyAnimatableColor type definition.
class K_DLLIMPORT FBPropertyBase< FBColorAndAlpha, kFBPT_ColorRGBA > FBPropertyColorAndAlpha
FBPropertyColorAndAlpha type definition.
class K_DLLIMPORT FBPropertyBaseAnimatable< int, kFBPT_enum > FBPropertyAnimatableEnum
FBPropertyBaseAnimatableEnum type definition.
FBPropertyType
Property types.
@ kFBPT_ColorRGB
colorrgb.
@ kFBPT_uint64
unsigned int 64 bits.
@ kFBPT_Vector4D
vector4d.
@ kFBPT_ColorRGBA
colorrgba.
@ kFBPT_kReference
kReference.
@ kFBPT_TimeCode
timecode.
@ kFBPT_stringlist
stringlist.
@ kFBPT_Vector3D
vector3d.
@ kFBPT_Vector2D
vector2d.
@ kFBPT_Reference
reference.
@ kFBPT_TimeSpan
timespan.
@ kFBPT_int64
int 64 bits.
class K_DLLIMPORT FBPropertyBaseAnimatable< int, kFBPT_int > FBPropertyAnimatableInt
FBPropertyAnimatableInt type definition.
class K_DLLIMPORT FBPropertyBaseAnimatable< double, kFBPT_double > FBPropertyAnimatableDouble
FBPropertyBaseAnimatableDouble type definition.
class K_DLLIMPORT FBPropertyBaseAnimatable< bool, kFBPT_bool > FBPropertyAnimatableBool
FBPropertyAnimatableBool type definition.
class K_DLLIMPORT FBPropertyBase< FBVector3d, kFBPT_Vector3D > FBPropertyVector3d
FBPropertyVector3d type definition.
class K_DLLIMPORT FBPropertyBase< FBPlug *, kFBPT_object > _FBPropertyBasePlug
Property: FBPropertyBase(FBPlug*)
class K_DLLIMPORT FBPropertyBaseComponent< FBComponent * > FBPropertyComponent
Property: FBPropertyBaseComponent(FBComponent*)
class K_DLLIMPORT FBPropertyBaseAnimatable< FBColorAndAlpha, kFBPT_ColorRGBA > FBPropertyAnimatableColorAndAlpha
FBPropertyAnimatableColorAndAlpha type definition.
class K_DLLIMPORT FBPropertyBaseAnimatable< FBTimeCode, kFBPT_TimeCode > FBPropertyAnimatableTimeCode
FBPropertyBaseAnimatableTimeCode type definition.
void(* fbGetSetHandler)(void)
function pointer
class K_DLLIMPORT FBPropertyBase< unsigned long long, kFBPT_uint64 > FBPropertyUInt64
Property: int
class K_DLLIMPORT FBPropertyBase< long long, kFBPT_int64 > FBPropertyInt64
Property: int
class K_DLLIMPORT FBPropertyBase< bool, kFBPT_bool > FBPropertyBool
Property: bool
class K_DLLIMPORT FBPropertyBase< FBVector4d, kFBPT_Vector4D > FBPropertyVector4d
FBPropertyVector4d type definition.
class K_DLLIMPORT FBPropertyBaseAnimatable< long long, kFBPT_int64 > FBPropertyAnimatableInt64
FBPropertyAnimatableInt64 type definition.
FBDataAsStringFlag
FBDataAsStringFlag.
@ kFBDataAsStringPersistence
Convert data to string type for storage.
@ kFBDataAsStringUI
Convert data to string type for UI display.
class K_DLLIMPORT FBPropertyBase< FBTimeCode, kFBPT_TimeCode > FBPropertyTimeCode
Property: FBTimeCode
class K_DLLIMPORT FBPropertyBase< float, kFBPT_float > FBPropertyFloat
Property: float
class K_DLLIMPORT FBPropertyBase< FBTime, kFBPT_Time > FBPropertyTime
Property: FBTime
class K_DLLIMPORT FBPropertyBase< FBVector2d, kFBPT_Vector2D > FBPropertyVector2d
FBPropertyVector2d type definition.
void(* fbExternalGetSetHandler)(HIObject pObject)
function pointer
class FBPropertyBaseComponent< FBPlug * > FBPropertyPlug
Property: FBPropertyBaseComponent(FBPlug*)
T * FBCast(FBProperty *pProperty, bool pAutoCreate=false)
Cast property using it's IObject interface into the proper type.
class K_DLLIMPORT FBPropertyBaseAnimatable< FBVector2d, kFBPT_Vector2D > FBPropertyAnimatableVector2d
FBPropertyAnimatableVector2D type definition.
class K_DLLIMPORT FBPropertyBaseAnimatable< FBVector4d, kFBPT_Vector4D > FBPropertyAnimatableVector4d
FBPropertyAnimatableVector4D type definition.
class K_DLLIMPORT FBPropertyBaseEnum< enum kDefaultEnum > FBPropertyEnum
A typedef Definition.
class K_DLLIMPORT FBPropertyBase< FBComponent *, kFBPT_object > _FBPropertyBaseComponent
Property: FBPropertyBase(FBComponent*)
class K_DLLIMPORT FBPropertyBaseAnimatable< FBTime, kFBPT_Time > FBPropertyAnimatableTime
FBPropertyBaseAnimatableTime type definition.
class K_DLLIMPORT FBPropertyBase< FBTimeSpan, kFBPT_TimeSpan > FBPropertyTimeSpan
Property: FBTimeSpan
kDefaultEnum
Patch to use the base enum for casting values .
class K_DLLIMPORT FBPropertyBase< FBColor, kFBPT_ColorRGB > FBPropertyColor
FBPropertyColor type definition.
class K_DLLIMPORT FBPropertyBase< double, kFBPT_double > FBPropertyDouble
Property: double
class K_DLLIMPORT FBVector2< double > FBVector2d
2D vector.
#define FB_FORWARD(ClassName)
Forwarding of class and typedef declaration.
#define __FB_FORWARD(ClassName)
Forwarding of class and typedef declaration.
class K_DLLIMPORT FBVector3< double > FBVector3d
3D vector.
class K_DLLIMPORT FBVector4< double > FBVector4d
4D vector