Open Reality Reference Guide
fbproperties.h File Reference

Property classes. More...

#include <kaydaradef.h>
#include <assert.h>
#include <stdio.h>
#include <stdlib.h>
#include <fbsdk/fbplug.h>
#include <fbsdk/fbarray.h>
#include <fbsdk/fbstring.h>
#include <fbsdk/fbtime.h>
#include <fbsdk/fbevaluateinfo.h>

Go to the source code of this file.

Classes

class  FBProperty
 Property: Base property class. More...
 
class  FBPropertyEvent
 PropertyEvent: Base event class. More...
 
class  FBPropertyEventUIIdle
 PropertyEvent: UI idle event. More...
 
class  FBPropertyEventVideoFrameRendering
 PropertyEvent: Video Frame Rendering Event More...
 
class  FBPropertyEventConnectionNotify
 PropertyEvent: Global ConnectionNotify event. More...
 
class  FBPropertyEventConnectionDataNotify
 PropertyEvent: Global ConnectionDataNotify event. More...
 
class  FBPropertyEventConnectionStateNotify
 PropertyEvent: Global ConnectionStateNotify event. More...
 
class  FBPropertyEventConnectionKeyingNotify
 PropertyEvent: Global KeyingNotify event. More...
 
class  FBPropertyBase< tType, pPT >
 
class  FBPropertyBaseEnum< tType >
 
class  FBPropertyBasicList
 
class  FBPropertyBaseList< tType >
 
class  FBPropertyStringList
 Property: StringList More...
 
class  FBPropertyManager
 Property Manager. More...
 
class  FBPropertyBaseComponent< tType >
 
class  FBPropertyString
 Property class: const char * (String). More...
 
class  FBPropertyAction
 Property: Action Action property to trigger function. More...
 
class  FBPropertyAnimatable
 Animatable property base class. More...
 
class  FBPropertyBaseAnimatable< tType, pPT >
 
class  FBPropertyBaseAnimatableEnum< tType >
 

Macros

#define FBSDK_DLL   K_DLLIMPORT
 Be sure that FBSDK_DLL is defined only once... More...
 
#define FB_DEFINE_COMPONENT(DllTag, Type)
 Define a component and give it the ability to be a property. More...
 
#define FB_DEFINE_ENUM(DllTag, Type)    typedef class DllTag FBPropertyBaseEnum< enum FB##Type > FBProperty##Type;
 Define an enum and give it the ability to be a property. More...
 
#define FB_DEFINE_CLASS_ENUM(EnumName)    typedef class FBPropertyBaseEnum< enum __FBClassType::e##EnumName > Property##EnumName;
 Define a private enum and give it the ability to be a property. More...
 
#define FB_DEFINE_LIST(DllTag, Type)    typedef class DllTag FBPropertyBaseList< FB##Type* > FBPropertyBaseList##Type;
 Define a component list. More...
 
#define FBImplementPropertyComponent(DllTag, Type)
 Implement a property based on a component. More...
 
#define FBImplementPropertyEnum(DllTag, Type)    template class DllTag FBSDKNamespaceFunc(FBPropertyBaseEnum)< enum FB##Type >
 Implement a property based on an enumeration. More...
 
#define FBImplementClassPropertyEnum(DllTag, Class, EnumName)    template class DllTag FBSDKNamespaceFunc(FBPropertyBaseEnum)< enum Class::E##EnumName >
 
#define FBImplementPropertyList(DllTag, Type)    template class DllTag FBSDKNamespaceFunc(FBPropertyBaseList) < FB##Type* >
 Implement a property list for a component. More...
 
#define FBPropertyInit(Param, Type, PropName, Get, Set)
 Initialize a property: default. More...
 
#define FBPropertyInitList(Param, PropName)
 Initialize a property: list. More...
 
#define FBPropertyInitStringList(Param, PropName)
 Initialize a property: string list. More...
 
#define FBPropertyInitEvent(Param, Type, SubType, PropName)
 Initialize a property: event. More...
 
#define FBPropertyInitEventGlobal(GlobalEventName, PropName)
 Initialize a property: global event. More...
 
#define FBPropertyInitInternal(Parent, PropName, MBProperty)
 Mapping to internal properties. More...
 
#define FBPropertyInitInternalEnum(Param, Type, PropName, MBProperty, Get, Set)
 Mapping to internal enum properties. More...
 
#define FBPropertyPublish(Parent, Prop, PropName, Get, Set)
 Publish a property. More...
 
#define FBPropertyInitTextureConnectable(Parent, Prop, PropName)
 Initialize a property: user texture connect property. More...
 

Typedefs

typedef void(* fbGetSetHandler) (void)
 function pointer More...
 
typedef void(* fbExternalGetSetHandler) (HIObject pObject)
 function pointer More...
 
typedef class K_DLLIMPORT FBPropertyBaseEnum< enum kDefaultEnumFBPropertyEnum
 A typedef Definition. More...
 
typedef class K_DLLIMPORT FBPropertyBase< bool, kFBPT_boolFBPropertyBool
 Property: bool More...
 
typedef class K_DLLIMPORT FBPropertyBase< int, kFBPT_intFBPropertyInt
 Property: int More...
 
typedef class K_DLLIMPORT FBPropertyBase< long long, kFBPT_int64FBPropertyInt64
 Property: int More...
 
typedef class K_DLLIMPORT FBPropertyBase< unsigned long long, kFBPT_uint64FBPropertyUInt64
 Property: int More...
 
typedef class K_DLLIMPORT FBPropertyBase< double, kFBPT_doubleFBPropertyDouble
 Property: double More...
 
typedef class K_DLLIMPORT FBPropertyBase< float, kFBPT_floatFBPropertyFloat
 Property: float More...
 
typedef class K_DLLIMPORT FBPropertyBase< FBTime, kFBPT_TimeFBPropertyTime
 Property: FBTime More...
 
typedef class K_DLLIMPORT FBPropertyBase< FBTimeCode, kFBPT_TimeCodeFBPropertyTimeCode
 Property: FBTimeCode More...
 
typedef class K_DLLIMPORT FBPropertyBase< FBTimeSpan, kFBPT_TimeSpanFBPropertyTimeSpan
 Property: FBTimeSpan More...
 
typedef class K_DLLIMPORT FBPropertyBase< kReference, kFBPT_kReferenceFBPropertykReference
 Property: kReference More...
 
typedef class K_DLLIMPORT FBPropertyBase< FBProperty *, kFBPT_ReferenceFBPropertyReference
 Property: FBProperty * More...
 
typedef class K_DLLIMPORT FBPropertyBase< FBComponent *, kFBPT_object_FBPropertyBaseComponent
 Property: FBPropertyBase(FBComponent*) More...
 
typedef class K_DLLIMPORT FBPropertyBaseComponent< FBComponent * > FBPropertyComponent
 Property: FBPropertyBaseComponent(FBComponent*) More...
 
typedef class K_DLLIMPORT FBPropertyBase< FBPlug *, kFBPT_object_FBPropertyBasePlug
 Property: FBPropertyBase(FBPlug*) More...
 
typedef class FBPropertyBaseComponent< FBPlug * > FBPropertyPlug
 Property: FBPropertyBaseComponent(FBPlug*) More...
 
typedef class K_DLLIMPORT FBPropertyBase< FBColor, kFBPT_ColorRGBFBPropertyColor
 FBPropertyColor type definition. More...
 
typedef class K_DLLIMPORT FBPropertyBase< FBColorAndAlpha, kFBPT_ColorRGBAFBPropertyColorAndAlpha
 FBPropertyColorAndAlpha type definition. More...
 
typedef class K_DLLIMPORT FBPropertyBase< FBVector2d, kFBPT_Vector2DFBPropertyVector2d
 FBPropertyVector2d type definition. More...
 
typedef class K_DLLIMPORT FBPropertyBase< FBVector3d, kFBPT_Vector3DFBPropertyVector3d
 FBPropertyVector3d type definition. More...
 
typedef class K_DLLIMPORT FBPropertyBase< FBVector4d, kFBPT_Vector4DFBPropertyVector4d
 FBPropertyVector4d type definition. More...
 
typedef class K_DLLIMPORT FBPropertyBaseAnimatable< bool, kFBPT_ActionFBPropertyAnimatableAction
 FBPropertyAnimatableAction type definition. More...
 
typedef class K_DLLIMPORT FBPropertyBaseAnimatable< bool, kFBPT_boolFBPropertyAnimatableBool
 FBPropertyAnimatableBool type definition. More...
 
typedef class K_DLLIMPORT FBPropertyBaseAnimatable< int, kFBPT_intFBPropertyAnimatableInt
 FBPropertyAnimatableInt type definition. More...
 
typedef class K_DLLIMPORT FBPropertyBaseAnimatable< long long, kFBPT_int64FBPropertyAnimatableInt64
 FBPropertyAnimatableInt64 type definition. More...
 
typedef class K_DLLIMPORT FBPropertyBaseAnimatable< unsigned long long, kFBPT_uint64FBPropertyAnimatableUInt64
 FBPropertyAnimatableUInt64 type definition. More...
 
typedef class K_DLLIMPORT FBPropertyBaseAnimatable< int, kFBPT_enumFBPropertyAnimatableEnum
 FBPropertyBaseAnimatableEnum type definition. More...
 
typedef class K_DLLIMPORT FBPropertyBaseAnimatable< double, kFBPT_doubleFBPropertyAnimatableDouble
 FBPropertyBaseAnimatableDouble type definition. More...
 
typedef class K_DLLIMPORT FBPropertyBaseAnimatable< FBTime, kFBPT_TimeFBPropertyAnimatableTime
 FBPropertyBaseAnimatableTime type definition. More...
 
typedef class K_DLLIMPORT FBPropertyBaseAnimatable< FBTimeCode, kFBPT_TimeCodeFBPropertyAnimatableTimeCode
 FBPropertyBaseAnimatableTimeCode type definition. More...
 
typedef class K_DLLIMPORT FBPropertyBaseAnimatable< FBVector2d, kFBPT_Vector2DFBPropertyAnimatableVector2d
 FBPropertyAnimatableVector2D type definition. More...
 
typedef class K_DLLIMPORT FBPropertyBaseAnimatable< FBVector3d, kFBPT_Vector3DFBPropertyAnimatableVector3d
 FBPropertyAnimatableVector3D type definition. More...
 
typedef class K_DLLIMPORT FBPropertyBaseAnimatable< FBVector4d, kFBPT_Vector4DFBPropertyAnimatableVector4d
 FBPropertyAnimatableVector4D type definition. More...
 
typedef class K_DLLIMPORT FBPropertyBaseAnimatable< FBColor, kFBPT_ColorRGBFBPropertyAnimatableColor
 FBPropertyAnimatableColor type definition. More...
 
typedef class K_DLLIMPORT FBPropertyBaseAnimatable< FBColorAndAlpha, kFBPT_ColorRGBAFBPropertyAnimatableColorAndAlpha
 FBPropertyAnimatableColorAndAlpha type definition. More...
 

Enumerations

enum  FBPropertyType {
  kFBPT_unknown,
  kFBPT_int,
  kFBPT_int64,
  kFBPT_uint64,
  kFBPT_bool,
  kFBPT_float,
  kFBPT_double,
  kFBPT_charptr,
  kFBPT_enum,
  kFBPT_Time,
  kFBPT_TimeCode,
  kFBPT_object,
  kFBPT_event,
  kFBPT_stringlist,
  kFBPT_Vector4D,
  kFBPT_Vector3D,
  kFBPT_ColorRGB,
  kFBPT_ColorRGBA,
  kFBPT_Action,
  kFBPT_Reference,
  kFBPT_TimeSpan,
  kFBPT_kReference,
  kFBPT_Vector2D
}
 Property types. More...
 
enum  FBDataAsStringFlag {
  kFBDataAsStringUI = 0,
  kFBDataAsStringPersistence = 1
}
 FBDataAsStringFlag. More...
 
enum  FBPropertyFlag {
  kFBPropertyFlagNotSet = 0,
  kFBPropertyFlagHideProperty = (1 << 0),
  kFBPropertyFlagForceStaticProperty = (1 << 1),
  kFBPropertyFlagDisableProperty = (1 << 2),
  kFBPropertyFlagDrivenProperty = (1 << 3),
  kFBPropertyFlagSlavedProperty = kFBPropertyFlagDrivenProperty,
  kFBPropertyFlagAnimated = (1 << 4),
  kFBPropertyFlagNotSavable = (1 << 5),
  kFBPropertyFlagReadOnly = (1 << 6),
  kFBPropertyFlagNotUserDeletable = (1 << 7),
  kFBValueAllocated = (1 << 8),
  kFBDynamicHidden = (1 << 9),
  kFBDrivenSetByMain = (1 << 10),
  kFBSlaveSetByMaster = kFBDrivenSetByMain,
  kFBLoadedUserProperty = (1 << 11)
}
 Available flags for FBProperty objects. More...
 
enum  kDefaultEnum { kDefaultItemNone }
 Patch to use the base enum for casting values . More...
 

Functions

 K_FORWARD (KEventBase)
 
 K_FORWARD (KObject)
 
 K_FORWARD (KProperty)
 
 K_FORWARD (KEvaluationProperty)
 
 K_FORWARD (KDataType)
 
 K_FORWARD (IFBObject)
 
 K_FORWARD (IRegister)
 
 FB_FORWARD (FBComponent)
 
 __FB_FORWARD (FBProperty)
 
template<class T >
T * FBCast (FBProperty *pProperty, bool pAutoCreate=false)
 Cast property using it's IObject interface into the proper type. More...
 
 __FB_FORWARD (FBPropertyAnimatable)
 
 FB_FORWARD (FBBox)
 
 FB_FORWARD (FBAnimationNode)
 
 FB_FORWARD (FBTake)
 
 __FB_FORWARD (FBPropertyEvent)
 
 FB_FORWARD (FBPropertyStringList)
 
 __FB_FORWARD (FBPropertyManager)
 

Detailed Description

Property classes.

Properties are callback variables that insert a layer of abstraction between the internal objects and the software development kit.

Definition in file fbproperties.h.

Macro Definition Documentation

◆ FB_DEFINE_CLASS_ENUM

#define FB_DEFINE_CLASS_ENUM (   EnumName)     typedef class FBPropertyBaseEnum< enum __FBClassType::e##EnumName > Property##EnumName;

Define a private enum and give it the ability to be a property.

Parameters
EnumNameName of the Enum to register as a property.

Definition at line 156 of file fbproperties.h.

◆ FB_DEFINE_COMPONENT

#define FB_DEFINE_COMPONENT (   DllTag,
  Type 
)
Value:
class FB##Type; \
typedef class DllTag FBPropertyBase< FB##Type*,kFBPT_object > FBPropertyBase##Type; \
typedef class DllTag FBPropertyBaseComponent< FB##Type* > FBProperty##Type

Define a component and give it the ability to be a property.

Parameters
DllTagAssociated DLL.
TypeComponent to register as a property.

Definition at line 141 of file fbproperties.h.

◆ FB_DEFINE_ENUM

#define FB_DEFINE_ENUM (   DllTag,
  Type 
)     typedef class DllTag FBPropertyBaseEnum< enum FB##Type > FBProperty##Type;

Define an enum and give it the ability to be a property.

Parameters
DllTagAssociated DLL.
TypeEnum to register as a property.

Definition at line 150 of file fbproperties.h.

◆ FB_DEFINE_LIST

#define FB_DEFINE_LIST (   DllTag,
  Type 
)     typedef class DllTag FBPropertyBaseList< FB##Type* > FBPropertyBaseList##Type;

Define a component list.

Parameters
DllTagAssociated DLL.
TypeComponent to use as a list item.

Definition at line 163 of file fbproperties.h.

◆ FBImplementPropertyComponent

#define FBImplementPropertyComponent (   DllTag,
  Type 
)
Value:
template class DllTag FBSDKNamespaceFunc(FBPropertyBase)< FB##Type*,kFBPT_object >; \
template class DllTag FBSDKNamespaceFunc(FBPropertyBaseComponent)< FB##Type* >;

Implement a property based on a component.

Parameters
DllTagAssociated DLL.
TypeClass to implement.

Definition at line 1259 of file fbproperties.h.

◆ FBImplementPropertyEnum

#define FBImplementPropertyEnum (   DllTag,
  Type 
)     template class DllTag FBSDKNamespaceFunc(FBPropertyBaseEnum)< enum FB##Type >

Implement a property based on an enumeration.

Parameters
DllTagAssociated DLL.
TypeClass to implement.

Definition at line 1267 of file fbproperties.h.

◆ FBImplementPropertyList

#define FBImplementPropertyList (   DllTag,
  Type 
)     template class DllTag FBSDKNamespaceFunc(FBPropertyBaseList) < FB##Type* >

Implement a property list for a component.

Parameters
DllTagAssociated DLL.
TypeClass to implement list for.

Definition at line 1276 of file fbproperties.h.

◆ FBPropertyInit

#define FBPropertyInit (   Param,
  Type,
  PropName,
  Get,
  Set 
)
Value:
{ \
PropertyAdd(PropName.Init( (void*)Param,#PropName,(Type (*)(void *))Get,(void (*)(void *,Type))Set )); \
}

Initialize a property: default.

Parameters
ParamOwner name.
TypeType of variable.
PropNameVariable name.
GetGet function pointer.
SetSet function pointer.

Definition at line 1375 of file fbproperties.h.

◆ FBPropertyInitEvent

#define FBPropertyInitEvent (   Param,
  Type,
  SubType,
  PropName 
)
Value:
{ \
PropertyAdd(PropName.Init( this, IQ(Param,IRegister),#PropName,Type,SubType )); \
}

Initialize a property: event.

Parameters
ParamOwner name.
TypeEvent Type.
SubTypeEvent SubType.
PropNameVariable name.

Definition at line 1404 of file fbproperties.h.

◆ FBPropertyInitEventGlobal

#define FBPropertyInitEventGlobal (   GlobalEventName,
  PropName 
)
Value:
{ \
PropertyAdd(PropName.InitGlobal( #PropName,GlobalEventName )); \
}

Initialize a property: global event.

Parameters
GlobalEventNameName of the global eventEvent Type.
PropNameVariable name.

Definition at line 1413 of file fbproperties.h.

◆ FBPropertyInitInternal

#define FBPropertyInitInternal (   Parent,
  PropName,
  MBProperty 
)
Value:
{\
PropertyAdd(PropName.InitInternal( MBProperty ));\
}

Mapping to internal properties.

Definition at line 1419 of file fbproperties.h.

◆ FBPropertyInitInternalEnum

#define FBPropertyInitInternalEnum (   Param,
  Type,
  PropName,
  MBProperty,
  Get,
  Set 
)
Value:
{\
PropName.InitInternal( MBProperty ); \
PropertyAdd(PropName.Init( (void*)Param,#PropName,(Type (*)(void *))Get,(void (*)(void *,Type))Set )); \
}

Mapping to internal enum properties.

Definition at line 1425 of file fbproperties.h.

◆ FBPropertyInitList

#define FBPropertyInitList (   Param,
  PropName 
)
Value:
{ \
PropertyAdd(PropName.Init( Param,#PropName )); \
}

Initialize a property: list.

Parameters
ParamOwner name.
PropNameVariable name.

Definition at line 1384 of file fbproperties.h.

◆ FBPropertyInitStringList

#define FBPropertyInitStringList (   Param,
  PropName 
)
Value:
{ \
PropertyAdd(PropName.Init( Param, #PropName )); \
}

Initialize a property: string list.

Parameters
ParamOwner name.
PropNameVariable name .

Definition at line 1393 of file fbproperties.h.

◆ FBPropertyInitTextureConnectable

#define FBPropertyInitTextureConnectable (   Parent,
  Prop,
  PropName 
)
Value:
{ \
PropertyAdd(Prop.CreateTextureConnectable( Parent,PropName )); \
}

Initialize a property: user texture connect property.

Only support Color, ColorAndAlpha, Number, Vector, Vector2, Vector4 data type for user texture connectable property!

Remarks
Need initialize the property before assign a value for it, otherwise may get assert failure.
Parameters
ParentOwner name.
PropVariable
PropNameVariable Name.

Definition at line 1449 of file fbproperties.h.

◆ FBPropertyPublish

#define FBPropertyPublish (   Parent,
  Prop,
  PropName,
  Get,
  Set 
)
Value:
{ \
PropertyAdd(Prop.CreateInternal( Parent,PropName,(fbExternalGetSetHandler)Get,(fbExternalGetSetHandler)Set )); \
}

Publish a property.

Parameters
ParentOwner name.
PropVariable
PropNameVariable Name.
GetGet function pointer.
SetSet function pointer.

Definition at line 1438 of file fbproperties.h.

◆ FBSDK_DLL

#define FBSDK_DLL   K_DLLIMPORT

Be sure that FBSDK_DLL is defined only once...

Definition at line 51 of file fbproperties.h.

Typedef Documentation

◆ _FBPropertyBaseComponent

Property: FBPropertyBase(FBComponent*)

Definition at line 1117 of file fbproperties.h.

◆ _FBPropertyBasePlug

typedef class K_DLLIMPORT FBPropertyBase< FBPlug*,kFBPT_object > _FBPropertyBasePlug

Property: FBPropertyBase(FBPlug*)

Definition at line 1117 of file fbproperties.h.

◆ fbExternalGetSetHandler

typedef void(* fbExternalGetSetHandler) (HIObject pObject)

function pointer

Definition at line 169 of file fbproperties.h.

◆ fbGetSetHandler

typedef void(* fbGetSetHandler) (void)

function pointer

Definition at line 167 of file fbproperties.h.

◆ FBPropertyAnimatableAction

FBPropertyAnimatableAction type definition.

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyAnimatableBool

FBPropertyAnimatableBool type definition.

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyAnimatableColor

FBPropertyAnimatableColor type definition.

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyAnimatableColorAndAlpha

FBPropertyAnimatableColorAndAlpha type definition.

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyAnimatableDouble

FBPropertyBaseAnimatableDouble type definition.

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyAnimatableEnum

◆ FBPropertyAnimatableInt

FBPropertyAnimatableInt type definition.

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyAnimatableInt64

FBPropertyAnimatableInt64 type definition.

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyAnimatableTime

FBPropertyBaseAnimatableTime type definition.

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyAnimatableTimeCode

FBPropertyBaseAnimatableTimeCode type definition.

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyAnimatableUInt64

FBPropertyAnimatableUInt64 type definition.

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyAnimatableVector2d

FBPropertyAnimatableVector2D type definition.

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyAnimatableVector3d

FBPropertyAnimatableVector3D type definition.

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyAnimatableVector4d

FBPropertyAnimatableVector4D type definition.

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyBool

typedef class K_DLLIMPORT FBPropertyBase< bool,kFBPT_bool > FBPropertyBool

Property: bool

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyColor

FBPropertyColor type definition.

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyColorAndAlpha

FBPropertyColorAndAlpha type definition.

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyComponent

Property: FBPropertyBaseComponent(FBComponent*)

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyDouble

typedef class K_DLLIMPORT FBPropertyBase< double,kFBPT_double > FBPropertyDouble

Property: double

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyEnum

A typedef Definition.

Definition at line 502 of file fbproperties.h.

◆ FBPropertyFloat

typedef class K_DLLIMPORT FBPropertyBase< float,kFBPT_float > FBPropertyFloat

Property: float

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyInt

typedef class K_DLLIMPORT FBPropertyBase< int,kFBPT_int > FBPropertyInt

Property: int

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyInt64

typedef class K_DLLIMPORT FBPropertyBase< long long,kFBPT_int64 > FBPropertyInt64

Property: int

Definition at line 1117 of file fbproperties.h.

◆ FBPropertykReference

typedef class K_DLLIMPORT FBPropertyBase< kReference,kFBPT_kReference > FBPropertykReference

Property: kReference

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyPlug

Property: FBPropertyBaseComponent(FBPlug*)

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyReference

Property: FBProperty *

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyTime

typedef class K_DLLIMPORT FBPropertyBase< FBTime,kFBPT_Time > FBPropertyTime

Property: FBTime

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyTimeCode

Property: FBTimeCode

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyTimeSpan

Property: FBTimeSpan

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyUInt64

typedef class K_DLLIMPORT FBPropertyBase< unsigned long long,kFBPT_uint64 > FBPropertyUInt64

Property: int

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyVector2d

FBPropertyVector2d type definition.

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyVector3d

FBPropertyVector3d type definition.

Definition at line 1117 of file fbproperties.h.

◆ FBPropertyVector4d

FBPropertyVector4d type definition.

Definition at line 1117 of file fbproperties.h.

Enumeration Type Documentation

◆ FBDataAsStringFlag

FBDataAsStringFlag.

Enumerator
kFBDataAsStringUI 

Convert data to string type for UI display.

kFBDataAsStringPersistence 

Convert data to string type for storage.

Definition at line 109 of file fbproperties.h.

◆ FBPropertyFlag

Available flags for FBProperty objects.

Note
Property flags are not saved into FBX files.
Enumerator
kFBPropertyFlagHideProperty 

This flag is used to show/hide the property in the propertiview. However, when turn on/off HidePropertry flag, this property won't show/hide unless you reload the UI. The nodes hidden by this flag are removed from UI.

kFBPropertyFlagDrivenProperty 

This is property is connected and driven by other same type of main property, and it always ask value from its main property.

kFBPropertyFlagSlavedProperty 
Deprecated:
Use kFBPropertyFlagDrivenProperty
kFBPropertyFlagNotSavable 

Should not be saved to or loaded from an FBX file.

kFBValueAllocated 

The value has been allocated and must be delete in destructor.

kFBDynamicHidden 

This flag is used to show/hide the property in the propertiview. When turn on/ff DynamicHidden flag, this property will show/hide. The nodes hidden by this flag still exist in UI.

kFBDrivenSetByMain 

Driven property can be modified, valid only when the main property is modified.

kFBSlaveSetByMaster 
Deprecated:
Use kFBDrivenSetByMain
kFBLoadedUserProperty 

This property is loaded from file.

Definition at line 118 of file fbproperties.h.

◆ FBPropertyType

Property types.

Enumerator
kFBPT_unknown 

unknow.

kFBPT_int 

int.

kFBPT_int64 

int 64 bits.

kFBPT_uint64 

unsigned int 64 bits.

kFBPT_bool 

bool.

kFBPT_float 

float.

kFBPT_double 

double.

kFBPT_charptr 

charptr.

kFBPT_enum 

enum.

kFBPT_Time 

time.

kFBPT_TimeCode 

timecode.

kFBPT_object 

object.

kFBPT_event 

event.

kFBPT_stringlist 

stringlist.

kFBPT_Vector4D 

vector4d.

kFBPT_Vector3D 

vector3d.

kFBPT_ColorRGB 

colorrgb.

kFBPT_ColorRGBA 

colorrgba.

kFBPT_Action 

action.

kFBPT_Reference 

reference.

kFBPT_TimeSpan 

timespan.

kFBPT_kReference 

kReference.

kFBPT_Vector2D 

vector2d.

Definition at line 79 of file fbproperties.h.

◆ kDefaultEnum

Patch to use the base enum for casting values .

Enumerator
kDefaultItemNone 

None.

Definition at line 975 of file fbproperties.h.

Function Documentation

◆ FBCast()

T* FBCast ( FBProperty pProperty,
bool  pAutoCreate = false 
)
inline

Cast property using it's IObject interface into the proper type.

Parameters
pPropertyProperty pointer to be cast into the proper type.
pAutoCreateCreate object if it doesn't exist? (default = false)
Returns
SDK object for pProperty.

Definition at line 487 of file fbproperties.h.

References FBGetFBObject().

FBPropertyBase
Definition: fbproperties.h:623
kFBPT_object
@ kFBPT_object
object.
Definition: fbproperties.h:92
FBProperty
Property: Base property class.
Definition: fbproperties.h:195
fbExternalGetSetHandler
void(* fbExternalGetSetHandler)(HIObject pObject)
function pointer
Definition: fbproperties.h:169
FBPropertyBaseComponent
Definition: fbproperties.h:1217