kfbxobject.h File Reference

#include <fbxfilesdk/fbxfilesdk_def.h>
#include <fbxfilesdk/kfbxplugins/kfbxplug.h>
#include <fbxfilesdk/kfbxplugins/kfbxproperty.h>
#include <fbxfilesdk/components/kbaselib/klib/kstringlist.h>
#include <fbxfilesdk/fbxfilesdk_nsbegin.h>
#include <fbxfilesdk/fbxfilesdk_nsend.h>

Go to the source code of this file.

Classes

class   KFbxObject
  The base class of most FBX objects. More...
class   KFbxIterator< KFbxProperty >
  A utility class for iterating over the properties (KFbxProperty) of any KFbxObject. More...
class   KFbxIteratorSrcBase
class   KFbxIteratorSrc< Type >
class   KFbxIteratorDstBase
class   KFbxIteratorDst< Type >
class   KFbxObjectPropertyChanged

Defines

#define  KFBXOBJECT_DECLARE(Class, Parent)
  Macro used to declare a new class derived from KFbxObject.
#define  KFBXOBJECT_DECLARE_ABSTRACT(Class, Parent)
  Macro used to declare a new abstract class derived from KFbxObject.
#define  KFBXOBJECT_IMPLEMENT(Class)
  Macro used to implement a new class derived from KFbxObject.
#define  KFBXOBJECT_IMPLEMENT_ABSTRACT(Class)   KFBXPLUG_IMPLEMENT_ABSTRACT(Class) \
  Macro used to implement a new abstract class derived from KFbxObject.
#define  KFbxForEach(Iterator, Object)   for ( (Object)=(Iterator).GetFirst(); (Object)!=0; (Object)=(Iterator).GetNext() )
#define  KFbxReverseForEach(Iterator, Object)   for ( Object=(Iterator).GetLast(); (Object)!=0; Object=(Iterator).GetPrevious() )
#define  KFbxForEach_Safe(Iterator, Object)   for ( Object=(Iterator).GetFirst(); (Object)!=0; Object=(Iterator).GetSafeNext() )
#define  KFbxReverseForEach_Safe(Iterator, Object)   for ( Object=(Iterator).GetLast(); (Object)!=0; Object=(Iterator).GetSafePrevious() )

Typedefs

typedef size_t  KFbxObjectID
typedef int  kFbxUpdateId
typedef KFbxObject HKFbxObject

Enumerations

enum   eFbxCompare { eFbxCompareProperties }

Functions

bool  KFbxConnectSrc (KFbxObject *pDstObject, KFbxObject *pSrcObject)
bool  KFbxConnectDst (KFbxObject *pSrcObject, KFbxObject *pDstObject)
template<class T >
int  KFbxGetSrcCount (KFbxObject const *pObject)
template<class T >
int  KFbxGetSrcCount (KFbxObject const *pObject, kFbxClassId pClassId)
template<class T >
T *  KFbxGetSrc (KFbxObject const *pObject, int pIndex=0)
template<class T >
T *  KFbxGetSrc (KFbxObject const *pObject, int pIndex, kFbxClassId pClassId)
template<class T >
T *  KFbxFindSrc (KFbxObject const *pObject, char const *pName, int pIndex=0)
template<class T >
T *  KFbxFindSrc (KFbxObject const *pObject, char const *pName, kFbxClassId pClassId, int pIndex=0)
template<class T >
bool  KFbxDisconnectAllSrc (KFbxObject *pObject)
template<class T >
int  KFbxGetDstCount (KFbxObject const *pObject)
template<class T >
int  KFbxGetDstCount (KFbxObject const *pObject, kFbxClassId pClassId)
template<class T >
T *  KFbxGetDst (KFbxObject const *pObject, int pIndex=0)
template<class T >
T *  KFbxGetDst (KFbxObject const *pObject, int pIndex, kFbxClassId pClassId)
template<class T >
T *  KFbxFindDst (KFbxObject const *pObject, char const *pName, int pIndex=0)
template<class T >
T *  KFbxFindDst (KFbxObject const *pObject, char const *pName, kFbxClassId pClassId, int pIndex=0)
template<class T >
bool  KFbxDisconnectAllDst (KFbxObject *pObject)

Detailed Description

Definition in file kfbxobject.h.


Define Documentation

#define KFBXOBJECT_DECLARE (   Class,
  Parent 
)
Value:
KFBXPLUG_DECLARE(Class)     /* this also set public */                                                      \
    typedef Parent ParentClass;                                                                                 \
    static Class* Create(KFbxObject* pContainer,  char const* pName);                                           \
    virtual ~Class(){};                                                                                         \
private:                                                                                                        \
    Class(const Class&);                                                                                        \
    Class& operator=(const Class&);                                                                             \

Macro used to declare a new class derived from KFbxObject.

Examples:
ExportScene03/MyKFbxMesh.h.

Definition at line 64 of file kfbxobject.h.

#define KFBXOBJECT_DECLARE_ABSTRACT (   Class,
  Parent 
)
Value:
KFBXPLUG_DECLARE_ABSTRACT(Class)    /* this also set public */                                              \
    typedef Parent ParentClass;                                                                                 \
private:                                                                                                        \
    Class(const Class&);                                                                                        \
    Class& operator=(const Class&);                                                                             \

Macro used to declare a new abstract class derived from KFbxObject.

Definition at line 74 of file kfbxobject.h.

#define KFBXOBJECT_IMPLEMENT (   Class )
Value:
KFBXPLUG_IMPLEMENT(Class)                                                                                   \
    Class* Class::Create(KFbxObject* pContainer, char const* pName)                                             \
    {                                                                                                           \
        if( !pContainer ) return NULL;                                                                          \
        Class* ClassPtr = Class::Create(pContainer->GetFbxSdkManager(), pName);                                 \
        pContainer->ConnectSrcObject(ClassPtr);                                                                 \
        return ClassPtr;                                                                                        \
    }                                                                                                           \

Macro used to implement a new class derived from KFbxObject.

Examples:
ExportScene03/MyKFbxMesh.cxx.

Definition at line 82 of file kfbxobject.h.

#define KFBXOBJECT_IMPLEMENT_ABSTRACT (   Class )    KFBXPLUG_IMPLEMENT_ABSTRACT(Class) \

Macro used to implement a new abstract class derived from KFbxObject.

Definition at line 93 of file kfbxobject.h.

#define KFbxForEach (   Iterator,
  Object 
)    for ( (Object)=(Iterator).GetFirst(); (Object)!=0; (Object)=(Iterator).GetNext() )

Definition at line 1455 of file kfbxobject.h.

#define KFbxReverseForEach (   Iterator,
  Object 
)    for ( Object=(Iterator).GetLast(); (Object)!=0; Object=(Iterator).GetPrevious() )

Definition at line 1456 of file kfbxobject.h.

#define KFbxForEach_Safe (   Iterator,
  Object 
)    for ( Object=(Iterator).GetFirst(); (Object)!=0; Object=(Iterator).GetSafeNext() )

Definition at line 1457 of file kfbxobject.h.

#define KFbxReverseForEach_Safe (   Iterator,
  Object 
)    for ( Object=(Iterator).GetLast(); (Object)!=0; Object=(Iterator).GetSafePrevious() )

Definition at line 1458 of file kfbxobject.h.


Typedef Documentation

typedef size_t KFbxObjectID

Definition at line 96 of file kfbxobject.h.

typedef int kFbxUpdateId

Definition at line 97 of file kfbxobject.h.

Definition at line 1232 of file kfbxobject.h.


Enumeration Type Documentation

Enumerator:
eFbxCompareProperties 

Definition at line 59 of file kfbxobject.h.


Function Documentation

bool KFbxConnectSrc ( KFbxObject pDstObject,
KFbxObject pSrcObject 
) [inline]

Definition at line 1229 of file kfbxobject.h.

{ return (pSrcObject && pDstObject) ? pDstObject->ConnectSrcObject(pSrcObject) : 0; }
bool KFbxConnectDst ( KFbxObject pSrcObject,
KFbxObject pDstObject 
) [inline]
Examples:
UserProperties/main.cxx.

Definition at line 1230 of file kfbxobject.h.

{ return (pSrcObject && pDstObject) ? pSrcObject->ConnectDstObject(pDstObject) : 0; }
int KFbxGetSrcCount ( KFbxObject const *  pObject ) [inline]

Definition at line 1235 of file kfbxobject.h.

{ return pObject ? pObject->GetSrcObjectCount(T::ClassId) : 0; }
int KFbxGetSrcCount ( KFbxObject const *  pObject,
kFbxClassId  pClassId 
) [inline]

Definition at line 1236 of file kfbxobject.h.

{ return pObject ? pObject->GetSrcObjectCount(pClassId) : 0;     }
T* KFbxGetSrc ( KFbxObject const *  pObject,
int  pIndex = 0 
) [inline]

Definition at line 1237 of file kfbxobject.h.

{ return pObject ? (T *) pObject->GetSrcObject(T::ClassId,pIndex) : 0; }
T* KFbxGetSrc ( KFbxObject const *  pObject,
int  pIndex,
kFbxClassId  pClassId 
) [inline]

Definition at line 1238 of file kfbxobject.h.

{ return pObject ? (T *) pObject->GetSrcObject(pClassId,pIndex) : 0;    }
T* KFbxFindSrc ( KFbxObject const *  pObject,
char const *  pName,
int  pIndex = 0 
) [inline]

Definition at line 1239 of file kfbxobject.h.

{ return pObject ? (T *) pObject->FindSrcObject(T::ClassId,pName,pIndex) : 0;   }
T* KFbxFindSrc ( KFbxObject const *  pObject,
char const *  pName,
kFbxClassId  pClassId,
int  pIndex = 0 
) [inline]

Definition at line 1240 of file kfbxobject.h.

{ return pObject ? (T *) pObject->FindSrcObject(pClassId,pName,pIndex) : 0; }
bool KFbxDisconnectAllSrc ( KFbxObject pObject ) [inline]

Definition at line 1242 of file kfbxobject.h.

{ return pObject->DisconnectAllSrcObject(T::ClassId);   }
int KFbxGetDstCount ( KFbxObject const *  pObject ) [inline]

Definition at line 1245 of file kfbxobject.h.

{ return pObject ? pObject->GetDstObjectCount(T::ClassId) : 0; }
int KFbxGetDstCount ( KFbxObject const *  pObject,
kFbxClassId  pClassId 
) [inline]

Definition at line 1246 of file kfbxobject.h.

{ return pObject ? pObject->GetDstObjectCount(pClassId) : 0;     }
T* KFbxGetDst ( KFbxObject const *  pObject,
int  pIndex = 0 
) [inline]

Definition at line 1247 of file kfbxobject.h.

{ return pObject ? (T *) pObject->GetDstObject(T::ClassId,pIndex) : 0; }
T* KFbxGetDst ( KFbxObject const *  pObject,
int  pIndex,
kFbxClassId  pClassId 
) [inline]

Definition at line 1248 of file kfbxobject.h.

{ return pObject ? (T *) pObject->GetDstObject(pClassId,pIndex) : 0;    }
T* KFbxFindDst ( KFbxObject const *  pObject,
char const *  pName,
int  pIndex = 0 
) [inline]

Definition at line 1249 of file kfbxobject.h.

{ return pObject ? (T *) pObject->FindDstObject(T::ClassId,pName,pIndex) : 0;   }
T* KFbxFindDst ( KFbxObject const *  pObject,
char const *  pName,
kFbxClassId  pClassId,
int  pIndex = 0 
) [inline]

Definition at line 1250 of file kfbxobject.h.

{ return pObject ? (T *) pObject->FindDstObject(pClassId,pName,pIndex) : 0; }
bool KFbxDisconnectAllDst ( KFbxObject pObject ) [inline]

Definition at line 1251 of file kfbxobject.h.

{ return pObject->DisconnectAllDstObject(T::ClassId);   }