FBPropertyBaseEnum< tType > Class Template Reference

FBPropertyBaseEnum< tType > Class Template Reference

#include <fbproperties.h>

Class Description

template<class tType>
class ORSDK2019::FBPropertyBaseEnum< tType >

Base template class for enum properties. Note: Index values of enum type must start from 0 and increase sequentially.

Definition at line 757 of file fbproperties.h.

+ Inheritance diagram for FBPropertyBaseEnum< tType >:

Public Member Functions

 FBPropertyBaseEnum ()
 Constructor. More...
 
 ~FBPropertyBaseEnum ()
 Destructor. More...
 
 FBPropertyBaseEnum (const FBPropertyBaseEnum< tType > &pValue)
 FBPropertyBaseEnum. More...
 
 operator tType () const
 Overloaded cast to tType operator. More...
 
virtual const char * EnumList (int pIndex) override
 Return the string of an enum value. More...
 
virtual const char * AsString (FBDataAsStringFlag pFlag=kFBDataAsStringUI) override
 Get as string. More...
 
virtual bool SetString (const char *pString) override
 Set enum value by equivalent string. More...
 
void operator= (tType pValue)
 Overloaded = operator. More...
 
- Public Member Functions inherited from FBPropertyBase< tType, kFBPT_enum >
 FBPropertyBase ()
 Constructor. More...
 
 FBPropertyBase (const FBPropertyBase< tType, pPT > &pValue)
 Constructor. More...
 
 ~FBPropertyBase ()
 Destructor. More...
 
FBPropertyBaseInit (void *pParent, const char *pName, tType(*pGet)(void *)=((void *) 0), void(*pSet)(void *, tType)=((void *) 0))
 Initialization function. More...
 
 operator tType () const
 Overloaded cast to tType operator. More...
 
virtual FBPropertyType GetPropertyType () override
 Get the property's type. More...
 
virtual void SetPropertyValue (tType pValue)
 Set the value of the internal property. More...
 
tType GetPropertyValue ()
 Get the value of the internal property. More...
 
virtual bool IsReadOnly ()
 Is this class read-only? If there is an existing set function, this class is read/write, otherwise it is read-only. More...
 
virtual void GetData (void *pData, int pSize, FBEvaluateInfo *pEvalInfo=((void *) 0)) const
 Get value. More...
 
virtual void SetData (void *pData)
 Set value. More...
 
void operator= (tType pValue)
 Overloaded = operator. More...
 
void operator= (const FBPropertyBase< tType, pPT > &pProperty)
 Overloaded = operator. More...
 
- Public Member Functions inherited from FBProperty
virtual const char * ClassName () override
 internal System vars. More...
 
virtual bool Is (int pTypeId) override
 Is( int pTypeId ) More...
 
virtual void FBDelete () override
 Actual destructor for a FBPlug. More...
 
virtual int GetTypeId () override
 GetTypeId( int pTypeId ) More...
 
virtual ~FBProperty ()
 
 FBProperty ()
 Constructor. More...
 
void SetEnable (bool pValue)
 Set property enable status. More...
 
const char * GetName ()
 Get the property's name. More...
 
void SetName (const char *pName)
 Set the property's name. More...
 
const char * GetPropertyTypeName ()
 Get the property's type name. More...
 
virtual KDataType * GetDataType ()
 Get the property datatype pointer. More...
 
int AsInt ()
 Get the property as an integer. More...
 
bool SetInt (int pInt)
 Set the property from an integer. More...
 
const char * OriValueAsString ()
 Get the property original value (before any modification) as string. More...
 
bool IsAnimated () const
 Get the property animated flag status. More...
 
bool OriIsAnimated () const
 Get the property original animated flag status (before any modification) More...
 
bool IsMinClamp ()
 Indicate if minimum value clamping will be applied on user input value. More...
 
bool IsMaxClamp ()
 Indicate if maximum value clamping will be applied on user input value. More...
 
bool IsTemporaryProperty ()
 Indicate if a property was created on retrieve because it didn't exist. More...
 
bool AcceptTemporaryProperty (const char *pEnumList[]=((void *) 0), fbExternalGetSetHandler pGet=((void *) 0), fbExternalGetSetHandler pSet=((void *) 0))
 Accept a temporary property as a dynamic property. More...
 
bool IsObjectList ()
 Indicate if is an instance of FBPropertyListObject. More...
 
FBStringListGetEnumStringList (bool pCreateIt=false)
 String list for enum properties. More...
 
void NotifyEnumStringListChanged ()
 Notify system that the enum list was modified. More...
 
void ModifyPropertyFlag (FBPropertyFlag pFlag, bool pValue)
 ModifyPropertyFlag. More...
 
FBPropertyFlag GetPropertyFlags ()
 GetPropertyFlags. More...
 
bool GetPropertyFlag (FBPropertyFlag pFlag)
 GetPropertyFlag. More...
 
void SetMinMax (double pMin, double pMax, bool pForceMinClamp=false, bool pForceMaxClamp=false)
 SetMinMax. More...
 
void SetMin (double pMin, bool pForceMinClamp=false)
 SetMin. More...
 
void SetMax (double pMax, bool pForceMaxClamp=false)
 SetMax. More...
 
double GetMin ()
 GetMin. More...
 
double GetMax ()
 GetMax. More...
 
void * GetParent ()
 Get the parent of the object. More...
 
virtual bool IsList ()
 Verify if property is of this type. More...
 
virtual bool IsAnimatable ()
 
bool IsInternal () const
 
bool IsUserProperty ()
 
bool IsTextureConnectableProperty ()
 
bool IsReferenceProperty ()
 
int GetSubMemberCount () const
 GetSubMemberCount. More...
 
bool AllowsLocking () const
 AllowsLocking. More...
 
bool HasSomethingLocked () const
 HasSomethingLocked. More...
 
bool IsLocked () const
 IsLocked. More...
 
bool IsMemberLocked (int pIndex) const
 IsMemberLocked. More...
 
void SetLocked (bool pLocked)
 SetLocked. More...
 
void SetMemberLocked (int pIndex, bool pLocked)
 SetMemberLocked. More...
 
- Public Member Functions inherited from IObject
virtual HIObject IQuery (kInterfaceID pInterfaceID, int IsLocal=0)=0
 
virtual void Destroy (int IsLocal=0)=0
 
- Public Member Functions inherited from FBWrapperHolder
 FBWrapperHolder ()
 
virtual ~FBWrapperHolder ()
 
FBScriptWrapperGetWrapper ()
 Return the wrapper interface of this FBObject. More...
 
void AddWrapper (FBScriptWrapper *)
 
void RemoveWrapper (FBScriptWrapper *)
 

Additional Inherited Members

- Public Types inherited from FBPropertyBase< tType, kFBPT_enum >
typedef tType ValueType
 Property Value Type. More...
 
- Public Types inherited from FBProperty
typedef FBPlug ParentClass
 
- Static Public Attributes inherited from FBProperty
static int TypeInfo
 
- Protected Member Functions inherited from FBPlug
bool IsSDKComponent ()
 Return whether or not item is an SDK component. More...
 
bool ConnectSrc (FBPlug *pSrc, FBConnectionType pConnectionType=kFBConnectionTypeNone)
 Add a source connection. More...
 
bool ConnectDst (FBPlug *pDst, FBConnectionType pConnectionType=kFBConnectionTypeNone)
 Add a destination connection. More...
 
bool ConnectSrcAt (int pDst_SrcIndex, FBPlug *pSrc, FBConnectionType pConnectionType=kFBConnectionTypeNone)
 Add a source connection. More...
 
bool ConnectDstAt (int pSrc_DstIndex, FBPlug *pDst, FBConnectionType pConnectionType=kFBConnectionTypeNone)
 Add a destination connection. More...
 
bool DisconnectDst (FBPlug *pDst)
 Remove a destination connection. More...
 
bool DisconnectSrc (FBPlug *pSrc)
 Remove a source connection. More...
 
void DisconnectAllSrc ()
 Remove all source connections. More...
 
void DisconnectAllDst ()
 Remove all destination connections. More...
 
bool DisconnectDstAt (int pIndex)
 Remove a destination connection at a specified index. More...
 
bool DisconnectSrcAt (int pIndex)
 Remove a source connection at a specified index. More...
 
bool ReplaceDstAt (int pIndex, FBPlug *pDst)
 Replace a destination connection at a specified index. More...
 
bool ReplaceSrcAt (int pIndex, FBPlug *pSrc)
 Replace a source connection at a specified index. More...
 
bool SwapSrc (int pIndexA, int pIndexB)
 Swap source connection at index A with source connection at index B. More...
 
bool MoveSrcAt (int pIndex, int pAtIndex)
 Move source connection at pIndex to pAtIndex. More...
 
bool MoveSrcAt (FBPlug *pSrc, FBPlug *pAtSrc)
 Move source connection pSrc to the position of pAtSrc. More...
 
int GetSrcCount ()
 Get source connection count. More...
 
FBPlugGetSrc (int pIndex)
 Get a source connection's plug at specified index. More...
 
FBConnectionType GetSrcType (int pIndex)
 Get a source connection's type at specified index. More...
 
int GetDstCount ()
 Get destination connection count. More...
 
FBPlugGetDst (int pIndex)
 Get a destination connection's plug at specified index. More...
 
FBConnectionType GetDstType (int pIndex)
 Get a destination connection's type at specified index. More...
 
bool BeginChange ()
 Begins a change on multiple plugs. More...
 
void EndChange ()
 Ends a change on multiple plugs. More...
 
void SetSelfModified (FBPlugModificationFlag pFlag, bool pBool)
 Set the plug's self modification flag. More...
 
bool GetSelfModified (FBPlugModificationFlag pFlag)
 Tell if the plug's self has changed. More...
 
void SetContentModified (FBPlugModificationFlag pFlag, bool pBool)
 Set the plug's owned property/object's modification flag. More...
 
bool GetContentModified (FBPlugModificationFlag pFlag)
 Tell if the plug's content has changed. More...
 
int GetPlugConnectionModifiedList (FBPlugList &pPlugList, FBPlugModificationFlag pConnectionModificatonFlag, bool pAddRemove)
 Get plug's modified src/dst property/object connection added/removed List. More...
 
bool RevertModification (FBPlugModificationFlag pFlag=kFBAllModifiedMask)
 Revert the plug's modification to original status. More...
 
void SetStatusFlag (FBPlugStatusFlag pStatus, bool pValue)
 Set the plug's status flag. More...
 
bool GetStatusFlag (FBPlugStatusFlag pStatus) const
 Tell if the plug's status has changed. More...
 
FBPlugGetOwner ()
 Get the owner of this plug. More...
 
FBPlugGetOwned (int pIndex)
 Get the owned plug at specified index. More...
 
int GetOwnedCount ()
 Get the owned plug count. More...
 
virtual bool PlugDataNotify (FBConnectionAction pAction, FBPlug *pThis, void *pData=((void *) 0), void *pDataOld=((void *) 0), int pDataSize=0)
 PlugDataNotify when overloaded is equivalent of FBSystem.OnConnectionDataNotify but in the context of the derived object only. More...
 
virtual bool PlugStateNotify (FBConnectionAction pAction, FBPlug *pThis, void *pData=((void *) 0), void *pDataOld=((void *) 0), int pDataSize=0)
 PlugStateNotify when overloaded is equivalent of FBSystem.OnConnectionStateNotify but in the context of the derived object only. More...
 
virtual bool PlugNotify (FBConnectionAction pAction, FBPlug *pThis, int pIndex, FBPlug *pPlug=((void *) 0), FBConnectionType pConnectionType=kFBConnectionTypeNone, FBPlug *pNewPlug=((void *) 0))
 PlugNotify when overloaded is equivalent of FBSystem.OnConnectionNotify but in the context of the derived object only. More...
 
- Static Protected Member Functions inherited from FBPlug
static int GetInternalClassId ()
 Internal class Id. More...
 
- Protected Attributes inherited from FBProperty
FBString mName
 Return to the default scope (private) More...
 
void * mParent
 mParent Parent of the property. More...
 
- Protected Attributes inherited from FBPlug
bool mAllocated
 Contain the Allocation State of the Component. More...
 
HIObject mObject
 Handle on the Plug. More...
 
bool mSDKComponent
 bool Plug is an SDK component. More...
 
- Static Protected Attributes inherited from FBPlug
static const char * ClassGroupName
 ClassGroupName of the object. More...
 
static int TypeInfo
 TypeInfo. More...
 
static int mGlobalTypeInfo
 Represente the Type Index. More...
 

Constructor & Destructor Documentation

FBPropertyBaseEnum ( )
inline

Constructor.

Definition at line 765 of file fbproperties.h.

765 {}
~FBPropertyBaseEnum ( )
inline

Destructor.

Definition at line 768 of file fbproperties.h.

769  {
770 
771  }
FBPropertyBaseEnum ( const FBPropertyBaseEnum< tType > &  pValue)
inline

FBPropertyBaseEnum.

Parameters
pValueFBPropertyBaseEnum.

Definition at line 776 of file fbproperties.h.

776  :
777  FBPropertyBase<tType,kFBPT_enum>(pValue)
778  { operator=((tType)pValue ); }
const char void * pValue
Definition: fbcontrols.h:2116
void operator=(tType pValue)
Overloaded = operator.
Definition: fbproperties.h:785

Member Function Documentation

virtual const char* AsString ( FBDataAsStringFlag  pFlag = kFBDataAsStringUI)
inlineoverridevirtual

Get as string.

Parameters
pFlagSpecifies the purpose of returned string it defaults to kFBDataAsStringUI.
Returns
String list.

Reimplemented from FBProperty.

Definition at line 821 of file fbproperties.h.

821 { return EnumList( FBPropertyBaseEnum::AsInt() );}
int AsInt()
Get the property as an integer.
virtual const char * EnumList(int pIndex) override
Return the string of an enum value.
Definition: fbproperties.h:794
virtual const char* EnumList ( int  pIndex)
inlineoverridevirtual

Return the string of an enum value.

Parameters
pIndexEnum value to get string for.
Returns
String value of enum specified by pIndex.

Reimplemented from FBProperty.

Definition at line 794 of file fbproperties.h.

795  {
797  {
798  return FBProperty::EnumList( pIndex );
799  }
800  // NOTE:
801  // --> replacing test for if(mStrings) by if(mStrings[0])
802  // This is safe to do as we should always have at least 1 item
803  // in the list based on our base class implementation. And
804  // the compiler should throw a linker error if mStrings is not found.
805  // mStrings[0] == NULL for enum kDefaultEnum but mStrings can never be NULL
806  else if(mStrings[0])
807  {
808  return mStrings[pIndex];
809  }
810  else
811  {
812  assert(mStrings[0] || FBPropertyBaseEnum::IsInternal());
813  return NULL;
814  }
815  }
#define NULL
Definition: kaydara.h:179
bool IsInternal() const
virtual const char * EnumList(int pIndex)
Return the string of an enum value.
operator tType ( ) const
inline

Overloaded cast to tType operator.

Get the value of the current object using Get function.

Returns
tType cast of current object.

Definition at line 792 of file fbproperties.h.

792 { tType Value; this->GetData( &Value,sizeof(Value) ); return Value; }
virtual void GetData(void *pData, int pSize, FBEvaluateInfo *pEvalInfo=((void *) 0)) const
Get value.
Definition: fbproperties.h:717
void operator= ( tType  pValue)
inline

Overloaded = operator.

Set the value of the current object using Set function.

Parameters
pValueValue to set for object.

Definition at line 785 of file fbproperties.h.

785 { this->SetData( &pValue ); }
virtual void SetData(void *pData)
Set value.
Definition: fbproperties.h:736
const char void * pValue
Definition: fbcontrols.h:2116
virtual bool SetString ( const char *  pString)
inlineoverridevirtual

Set enum value by equivalent string.

Parameters
pStringString to set for enum property, with format same as AsString(kFBDataAsStringPersistence)
Returns
True if success.

Reimplemented from FBProperty.

Definition at line 827 of file fbproperties.h.

828  {
829  int count=0;
830  const char * tmpstr;
831  while ((tmpstr=EnumList( count ))!=NULL) {
832  if (strcmp(tmpstr,pString)==0) {
833  FBPropertyBaseEnum::SetData( &count );
834  return true;
835  }
836  count++;
837  }
838  return false;
839  }
#define NULL
Definition: kaydara.h:179
virtual void SetData(void *pData)
Set value.
Definition: fbproperties.h:736
virtual const char * EnumList(int pIndex) override
Return the string of an enum value.
Definition: fbproperties.h:794
Py_ssize_t count
Definition: abstract.h:1077

The documentation for this class was generated from the following file: