FbxPropertyInfo Class Reference

#include <fbxpropertypage.h>

Class Description

Definition at line 37 of file fbxpropertypage.h.

Public Types

enum  EValueIndex {
  eValueMin, eValueSoftMin, eValueMax, eValueSoftMax,
  eValueCount
}
 

Public Member Functions

 FBXSDK_FRIEND_NEW ()
 
void Destroy ()
 
FbxPropertyInfoClone (FbxPropertyPage *)
 
void IncRef ()
 
void DecRef ()
 
int GetRef ()
 
FbxStringSymbol GetName () const
 
EFbxType GetType () const
 
FbxPropertyPageGetTypeInfo () const
 
void SetLabel (const char *pLabel)
 
const char * GetLabel () const
 
void SetUserTag (int pUserTag)
 
int GetUserTag () const
 
void SetUserData (const void *pUserData)
 
void * GetUserData () const
 
int AddEnumValue (const char *pStringValue)
 
void InsertEnumValue (int pIndex, const char *pStringValue)
 
int GetEnumCount ()
 
void SetEnumValue (int pIndex, const char *pStringValue)
 
void RemoveEnumValue (int pIndex)
 
char * GetEnumValue (int pIndex)
 
bool HasMinMax (EValueIndex pId) const
 
bool GetMinMax (EValueIndex pId, void *pValue, EFbxType pValueType) const
 
bool SetMinMax (EValueIndex pId, const void *pValue, EFbxType pValueType)
 

Static Public Member Functions

static FbxPropertyInfoCreate (const char *pName, FbxPropertyPage *pTypeInfo)
 
static FbxPropertyInfoCreate (const char *pName, EFbxType pType=eFbxUndefined)
 

Member Enumeration Documentation

Member Function Documentation

FBXSDK_FRIEND_NEW ( )
static FbxPropertyInfo* Create ( const char *  pName,
FbxPropertyPage pTypeInfo 
)
inlinestatic

Definition at line 41 of file fbxpropertypage.h.

41 { return FbxNew< FbxPropertyInfo >(pName,pTypeInfo); }
static FbxPropertyInfo* Create ( const char *  pName,
EFbxType  pType = eFbxUndefined 
)
inlinestatic

Definition at line 42 of file fbxpropertypage.h.

42 { return FbxNew< FbxPropertyInfo >(pName,pType); }
void Destroy ( )
inline

Definition at line 43 of file fbxpropertypage.h.

43 { FbxDelete(this); }
void FbxDelete(T *p)
Definition: fbxnew.h:341
FbxPropertyInfo* Clone ( FbxPropertyPage )
inline

Definition at line 44 of file fbxpropertypage.h.

45  {
46  // @@@@@ Filter is missing
47  // @@@@@ Clone is incomplete
48  if (mTypeInfo)
49  {
50  return FbxNew< FbxPropertyInfo >(mName,mTypeInfo);
51  }
52  else
53  {
54  return FbxNew< FbxPropertyInfo >(mName,mType);
55  }
56  }
void IncRef ( )
inline

Definition at line 58 of file fbxpropertypage.h.

58 { mRef++; }
void DecRef ( )
inline

Definition at line 59 of file fbxpropertypage.h.

59 { mRef--; if (mRef==0) FbxDelete(this); }
void FbxDelete(T *p)
Definition: fbxnew.h:341
int GetRef ( )
inline

Definition at line 60 of file fbxpropertypage.h.

60 { return mRef; }
FbxStringSymbol GetName ( ) const
inline

Definition at line 64 of file fbxpropertypage.h.

64 { return mName; }
EFbxType GetType ( ) const
FbxPropertyPage* GetTypeInfo ( ) const
inline

Definition at line 66 of file fbxpropertypage.h.

66 { return mTypeInfo; }
void SetLabel ( const char *  pLabel)
inline

Definition at line 68 of file fbxpropertypage.h.

68 { mLabel=pLabel; }
const char* GetLabel ( ) const
inline

Definition at line 69 of file fbxpropertypage.h.

69 { return mLabel.IsEmpty() ? "" : ((const char*)mLabel); }
bool IsEmpty() const
Determine the symbol empty or not.
Definition: fbxsymbol.h:112
void SetUserTag ( int  pUserTag)
inline

Definition at line 71 of file fbxpropertypage.h.

71 { mUserTag=pUserTag; }
int GetUserTag ( ) const
inline

Definition at line 72 of file fbxpropertypage.h.

72 { return mUserTag; }
void SetUserData ( const void *  pUserData)
inline

Definition at line 74 of file fbxpropertypage.h.

74 { mUserData=(void*)pUserData; }
void* GetUserData ( ) const
inline

Definition at line 75 of file fbxpropertypage.h.

75 { return mUserData; }
int AddEnumValue ( const char *  pStringValue)
inline

Definition at line 78 of file fbxpropertypage.h.

79  {
80  if (GetType() == eFbxEnum)
81  {
82  if (!mEnumList)
83  mEnumList.Reset(FbxNew< FbxStringList >());
84 
85  if( mEnumList->FindIndex( pStringValue ) == -1 )
86  return mEnumList->Add((char*)pStringValue);
87  }
88  return -1;
89  }
void Reset(Type *pPtr=0)
Reset the scoped pointer by swapping with another pointer.
Definition: fbxalloc.h:216
Enumeration.
EFbxType GetType() const
void InsertEnumValue ( int  pIndex,
const char *  pStringValue 
)
inline

Definition at line 91 of file fbxpropertypage.h.

92  {
93  if (GetType() == eFbxEnum)
94  {
95  if (!mEnumList)
96  mEnumList.Reset(FbxNew< FbxStringList >());
97 
98  mEnumList->InsertAt(pIndex,(char*)pStringValue);
99  }
100  }
void Reset(Type *pPtr=0)
Reset the scoped pointer by swapping with another pointer.
Definition: fbxalloc.h:216
Enumeration.
EFbxType GetType() const
int GetEnumCount ( )
inline

Definition at line 102 of file fbxpropertypage.h.

103  {
104  return mEnumList ? mEnumList->GetCount() : 0;
105  }
void SetEnumValue ( int  pIndex,
const char *  pStringValue 
)
inline

Definition at line 107 of file fbxpropertypage.h.

108  {
109  if (GetType() == eFbxEnum)
110  {
111  if (!mEnumList)
112  mEnumList.Reset(FbxNew< FbxStringList >());
113 
114  mEnumList->SetStringAt(pIndex,(char*)pStringValue);
115  }
116  }
void Reset(Type *pPtr=0)
Reset the scoped pointer by swapping with another pointer.
Definition: fbxalloc.h:216
Enumeration.
EFbxType GetType() const
void RemoveEnumValue ( int  pIndex)
inline

Definition at line 118 of file fbxpropertypage.h.

119  {
120  if (GetType() == eFbxEnum)
121  {
122  if (!mEnumList)
123  mEnumList.Reset(FbxNew< FbxStringList >());
124 
125  mEnumList->RemoveAt(pIndex);
126  }
127  }
void Reset(Type *pPtr=0)
Reset the scoped pointer by swapping with another pointer.
Definition: fbxalloc.h:216
Enumeration.
EFbxType GetType() const
char* GetEnumValue ( int  pIndex)
inline

Definition at line 129 of file fbxpropertypage.h.

130  {
131  char* lValue = NULL;
132  if (GetType() == eFbxEnum) {
133  lValue = mEnumList ? mEnumList->GetStringAt(pIndex) : 0;
134  }
135  return lValue;
136  }
#define NULL
Definition: fbxarch.h:207
Enumeration.
EFbxType GetType() const
bool HasMinMax ( EValueIndex  pId) const
inline

Definition at line 142 of file fbxpropertypage.h.

143  {
144  return mMinMaxValue[pId] != NULL;
145  }
#define NULL
Definition: fbxarch.h:207
bool GetMinMax ( EValueIndex  pId,
void *  pValue,
EFbxType  pValueType 
) const
inline

Definition at line 147 of file fbxpropertypage.h.

148  {
149  if (mMinMaxValue[pId]) {
150  return FbxTypeCopy(pValue, pValueType, mMinMaxValue[pId], GetType());
151  }
152  return false;
153  }
EFbxType GetType() const
bool FbxTypeCopy(T1 &, const T2 &)
bool SetMinMax ( EValueIndex  pId,
const void *  pValue,
EFbxType  pValueType 
)
inline

Definition at line 155 of file fbxpropertypage.h.

156  {
157  if (!mMinMaxValue[pId]) {
158  size_t lSize = FbxTypeSizeOf(GetType());
159  if (lSize) {
160  mMinMaxValue[pId] = FbxMalloc(lSize);
161  }
162  }
163  if (mMinMaxValue[pId]) {
164  return FbxTypeCopy(mMinMaxValue[pId], GetType(), pValue, pValueType);
165  }
166  return false;
167  }
FBXSDK_DLL const size_t FbxTypeSizeOf(const EFbxType pType)
Retrieve a type enumeration memory footprint size.
EFbxType GetType() const
bool FbxTypeCopy(T1 &, const T2 &)

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