#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>
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.
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 > |
Namespaces | |
ORSDK2018 | |
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 KEventBase * | HKEventBase |
typedef KObject * | HKObject |
typedef KProperty * | HKProperty |
typedef KEvaluationProperty * | HKEvaluationProperty |
typedef KDataType * | HKDataType |
typedef IFBObject * | HIFBObject |
typedef IRegister * | HIRegister |
typedef void(* | fbGetSetHandler) (void) |
function pointer More... | |
typedef void(* | fbExternalGetSetHandler) (HIObject pObject) |
function pointer More... | |
typedef class FBPropertyBaseEnum< enum kDefaultEnum > | FBPropertyEnum |
A typedef Definition. More... | |
typedef class FBPropertyBase< bool, kFBPT_bool > | FBPropertyBool |
Property: bool More... | |
typedef class FBPropertyBase< int, kFBPT_int > | FBPropertyInt |
Property: int More... | |
typedef class FBPropertyBase< long long, kFBPT_int64 > | FBPropertyInt64 |
Property: int More... | |
typedef class FBPropertyBase< unsigned long long, kFBPT_uint64 > | FBPropertyUInt64 |
Property: int More... | |
typedef class FBPropertyBase< double, kFBPT_double > | FBPropertyDouble |
Property: double More... | |
typedef class FBPropertyBase< float, kFBPT_float > | FBPropertyFloat |
Property: float More... | |
typedef class FBPropertyBase< FBTime, kFBPT_Time > | FBPropertyTime |
Property: FBTime More... | |
typedef class FBPropertyBase< FBTimeCode, kFBPT_TimeCode > | FBPropertyTimeCode |
Property: FBTimeCode More... | |
typedef class FBPropertyBase< FBTimeSpan, kFBPT_TimeSpan > | FBPropertyTimeSpan |
Property: FBTimeSpan More... | |
typedef class FBPropertyBase< kReference, kFBPT_kReference > | FBPropertykReference |
Property: kReference More... | |
typedef class FBPropertyBase< FBProperty *, kFBPT_Reference > | FBPropertyReference |
Property: FBProperty * More... | |
typedef class FBPropertyBase< FBComponent *, kFBPT_object > | _FBPropertyBaseComponent |
Property: FBPropertyBase(FBComponent*) More... | |
typedef class FBPropertyBaseComponent< FBComponent * > | FBPropertyComponent |
Property: FBPropertyBaseComponent(FBComponent*) More... | |
typedef class FBPropertyBase< FBPlug *, kFBPT_object > | _FBPropertyBasePlug |
Property: FBPropertyBase(FBPlug*) More... | |
typedef class FBPropertyBaseComponent< FBPlug * > | FBPropertyPlug |
Property: FBPropertyBaseComponent(FBPlug*) More... | |
typedef class FBPropertyBase< FBColor, kFBPT_ColorRGB > | FBPropertyColor |
FBPropertyColor type definition. More... | |
typedef class FBPropertyBase< FBColorAndAlpha, kFBPT_ColorRGBA > | FBPropertyColorAndAlpha |
FBPropertyColorAndAlpha type definition. More... | |
typedef class FBPropertyBase< FBVector2d, kFBPT_Vector2D > | FBPropertyVector2d |
FBPropertyVector2d type definition. More... | |
typedef class FBPropertyBase< FBVector3d, kFBPT_Vector3D > | FBPropertyVector3d |
FBPropertyVector3d type definition. More... | |
typedef class FBPropertyBase< FBVector4d, kFBPT_Vector4D > | FBPropertyVector4d |
FBPropertyVector4d type definition. More... | |
typedef class FBPropertyBaseAnimatable< bool, kFBPT_Action > | FBPropertyAnimatableAction |
FBPropertyAnimatableAction type definition. More... | |
typedef class FBPropertyBaseAnimatable< bool, kFBPT_bool > | FBPropertyAnimatableBool |
FBPropertyAnimatableBool type definition. More... | |
typedef class FBPropertyBaseAnimatable< int, kFBPT_int > | FBPropertyAnimatableInt |
FBPropertyAnimatableInt type definition. More... | |
typedef class FBPropertyBaseAnimatable< long long, kFBPT_int64 > | FBPropertyAnimatableInt64 |
FBPropertyAnimatableInt64 type definition. More... | |
typedef class FBPropertyBaseAnimatable< unsigned long long, kFBPT_uint64 > | FBPropertyAnimatableUInt64 |
FBPropertyAnimatableUInt64 type definition. More... | |
typedef class FBPropertyBaseAnimatable< int, kFBPT_enum > | FBPropertyAnimatableEnum |
FBPropertyBaseAnimatableEnum type definition. More... | |
typedef class FBPropertyBaseAnimatable< double, kFBPT_double > | FBPropertyAnimatableDouble |
FBPropertyBaseAnimatableDouble type definition. More... | |
typedef class FBPropertyBaseAnimatable< FBTime, kFBPT_Time > | FBPropertyAnimatableTime |
FBPropertyBaseAnimatableTime type definition. More... | |
typedef class FBPropertyBaseAnimatable< FBTimeCode, kFBPT_TimeCode > | FBPropertyAnimatableTimeCode |
FBPropertyBaseAnimatableTimeCode type definition. More... | |
typedef class FBPropertyBaseAnimatable< FBVector2d, kFBPT_Vector2D > | FBPropertyAnimatableVector2d |
FBPropertyAnimatableVector2D type definition. More... | |
typedef class FBPropertyBaseAnimatable< FBVector3d, kFBPT_Vector3D > | FBPropertyAnimatableVector3d |
FBPropertyAnimatableVector3D type definition. More... | |
typedef class FBPropertyBaseAnimatable< FBVector4d, kFBPT_Vector4D > | FBPropertyAnimatableVector4d |
FBPropertyAnimatableVector4D type definition. More... | |
typedef class FBPropertyBaseAnimatable< FBColor, kFBPT_ColorRGB > | FBPropertyAnimatableColor |
FBPropertyAnimatableColor type definition. More... | |
typedef class FBPropertyBaseAnimatable< FBColorAndAlpha, kFBPT_ColorRGBA > | FBPropertyAnimatableColorAndAlpha |
FBPropertyAnimatableColorAndAlpha type definition. More... | |
Functions | |
template<class T > | |
T * | FBCast (FBProperty *pProperty, bool pAutoCreate=false) |
Cast property using it's IObject interface into the proper type. 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.
EnumName | Name of the Enum to register as a property. |
Definition at line 154 of file fbproperties.h.
#define FB_DEFINE_COMPONENT | ( | DllTag, | |
Type | |||
) |
Define a component and give it the ability to be a property.
DllTag | Associated DLL. |
Type | Component to register as a property. |
Definition at line 139 of file fbproperties.h.
#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.
DllTag | Associated DLL. |
Type | Enum to register as a property. |
Definition at line 148 of file fbproperties.h.
#define FB_DEFINE_LIST | ( | DllTag, | |
Type | |||
) | typedef class DllTag FBPropertyBaseList< FB##Type* > FBPropertyBaseList##Type; |
Define a component list.
DllTag | Associated DLL. |
Type | Component to use as a list item. |
Definition at line 161 of file fbproperties.h.
#define FBImplementClassPropertyEnum | ( | DllTag, | |
Class, | |||
EnumName | |||
) | template class DllTag FBSDKNamespaceFunc(FBPropertyBaseEnum)< enum Class::E##EnumName > |
Definition at line 1269 of file fbproperties.h.
#define FBImplementPropertyComponent | ( | DllTag, | |
Type | |||
) |
Implement a property based on a component.
DllTag | Associated DLL. |
Type | Class to implement. |
Definition at line 1254 of file fbproperties.h.
#define FBImplementPropertyEnum | ( | DllTag, | |
Type | |||
) | template class DllTag FBSDKNamespaceFunc(FBPropertyBaseEnum)< enum FB##Type > |
Implement a property based on an enumeration.
DllTag | Associated DLL. |
Type | Class to implement. |
Definition at line 1267 of file fbproperties.h.
#define FBImplementPropertyList | ( | DllTag, | |
Type | |||
) | template class DllTag FBSDKNamespaceFunc(FBPropertyBaseList) < FB##Type* > |
Implement a property list for a component.
DllTag | Associated DLL. |
Type | Class to implement list for. |
Definition at line 1280 of file fbproperties.h.
Initialize a property: default.
Param | Owner name. |
Type | Type of variable. |
PropName | Variable name. |
Get | Get function pointer. |
Set | Set function pointer. |
Definition at line 1381 of file fbproperties.h.
#define FBPropertyInitEvent | ( | Param, | |
Type, | |||
SubType, | |||
PropName | |||
) |
Initialize a property: event.
Param | Owner name. |
Type | Event Type. |
SubType | Event SubType. |
PropName | Variable name. |
Definition at line 1410 of file fbproperties.h.
#define FBPropertyInitEventGlobal | ( | GlobalEventName, | |
PropName | |||
) |
Initialize a property: global event.
GlobalEventName | Name of the global eventEvent Type. |
PropName | Variable name. |
Definition at line 1419 of file fbproperties.h.
#define FBPropertyInitInternal | ( | Parent, | |
PropName, | |||
MBProperty | |||
) |
Mapping to internal properties.
Definition at line 1425 of file fbproperties.h.
Mapping to internal enum properties.
Definition at line 1431 of file fbproperties.h.
#define FBPropertyInitList | ( | Param, | |
PropName | |||
) |
Initialize a property: list.
Param | Owner name. |
PropName | Variable name. |
Definition at line 1390 of file fbproperties.h.
#define FBPropertyInitStringList | ( | Param, | |
PropName | |||
) |
Initialize a property: string list.
Param | Owner name. |
PropName | Variable name . |
Definition at line 1399 of file fbproperties.h.
#define FBPropertyInitTextureConnectable | ( | Parent, | |
Prop, | |||
PropName | |||
) |
Initialize a property: user texture connect property.
Only support Color, ColorAndAlpha, Number, Vector, Vector2, Vector4 data type for user texture connectable property!
Parent | Owner name. |
Prop | Variable |
PropName | Variable Name. |
Definition at line 1455 of file fbproperties.h.
#define FBPropertyPublish | ( | Parent, | |
Prop, | |||
PropName, | |||
Get, | |||
Set | |||
) |
Publish a property.
Parent | Owner name. |
Prop | Variable |
PropName | Variable Name. |
Get | Get function pointer. |
Set | Set function pointer. |
Definition at line 1444 of file fbproperties.h.
#define FBSDK_DLL K_DLLIMPORT |
Be sure that FBSDK_DLL is defined only once...
Definition at line 51 of file fbproperties.h.
typedef IFBObject* HIFBObject |
Definition at line 69 of file fbproperties.h.
typedef IRegister* HIRegister |
Definition at line 70 of file fbproperties.h.
typedef KDataType* HKDataType |
Definition at line 68 of file fbproperties.h.
typedef KEvaluationProperty* HKEvaluationProperty |
Definition at line 67 of file fbproperties.h.
typedef KEventBase* HKEventBase |
Definition at line 64 of file fbproperties.h.
typedef KObject* HKObject |
Definition at line 65 of file fbproperties.h.
typedef KProperty* HKProperty |
Definition at line 66 of file fbproperties.h.