kfbxobject.h File Reference


Detailed Description

Definition in file kfbxobject.h.

#include <fbxfilesdk/fbxfilesdk_def.h>
#include <fbxfilesdk/components/kbaselib/klib/kstring.h>
#include <fbxfilesdk/components/kbaselib/klib/kstringlist.h>
#include <fbxfilesdk/components/kbaselib/klib/kname.h>
#include <fbxfilesdk/components/kbaselib/klib/karrayul.h>
#include <fbxfilesdk/components/kbaselib/klib/kscopedptr.h>
#include <fbxfilesdk/kfbxplugins/kfbxplug.h>
#include <fbxfilesdk/kfbxplugins/kfbxproperty.h>
#include <fbxfilesdk/kfbxevents/kfbxevents.h>
#include <fbxfilesdk/fbxfilesdk_nsbegin.h>
#include <fbxfilesdk/fbxfilesdk_nsend.h>

Include dependency graph for kfbxobject.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.


Classes

class   KFbxObjectPropertyChanged
class   KFbxObject
  Basic class for object type identification and instance naming. More...
class   KFbxIterator
  A utility class for iterating over the properties (KFbxProperty) of any KFbxObject. More...
class   KFbxIteratorSrcBase
class   KFbxIteratorSrc
class   KFbxIteratorDstBase
class   KFbxIteratorDst

Defines

#define  KFBXOBJECT_DECLARE(Class, Parent)
#define  KFBXOBJECT_DECLARE_ABSTRACT(Class, Parent)
#define  KFBXOBJECT_IMPLEMENT(Class)
#define  KFBXOBJECT_IMPLEMENT_ABSTRACT(Class)   KFBXPLUG_IMPLEMENT_ABSTRACT(Class) \
#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, T const *VC6Dummy=0)
template<class T>
int  KFbxGetSrcCount (KFbxObject const *pObject, kFbxClassId pClassId, T const *VC6Dummy=0)
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, T *VC6Dummy=0)
template<class T>
int  KFbxGetDstCount (KFbxObject const *pObject, T const *VC6Dummy=0)
template<class T>
int  KFbxGetDstCount (KFbxObject const *pObject, kFbxClassId pClassId, T const *VC6Dummy=0)
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, T *VC6Dummy=0)

Define Documentation

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

Definition at line 1479 of file kfbxobject.h.

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

Definition at line 1481 of file kfbxobject.h.

#define KFBXOBJECT_DECLARE ( Class,
Parent   ) 

Value:

KFBXPLUG_DECLARE(Class)     /* this also set public */                                                          \
        typedef Parent ParentClass;                                                                                 \
        static Class* Create(KFbxObject *pContainer,  char const *pName);                                           \
        static Class* CreateForClone( KFbxSdkManager *pManager, char const *pName, const Class* pFrom );            \
        virtual ~Class(){};                                                                                         \
        Class*  TypedClone(KFbxObject* pContainer = NULL, KFbxObject::ECloneType pCloneType = eDEEP_CLONE) const;   \
    private:                                                                                                        \
        Class(const Class&);                                                                                        \
        Class& operator=(const Class&);                                                                             \

Definition at line 87 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&);                                                                             \

Definition at line 98 of file kfbxobject.h.

#define KFBXOBJECT_IMPLEMENT ( Class   ) 

Value:

KFBXPLUG_IMPLEMENT(Class)                                                                                   \
        Class* Class::Create(KFbxObject *pContainer, char const *pName)                                             \
        {                                                                                                           \
            Class* ClassPtr=Class::Create(pContainer->GetFbxSdkManager(),pName);                                    \
            pContainer->ConnectSrcObject(ClassPtr);                                                                 \
            return ClassPtr;                                                                                        \
        }                                                                                                           \
        Class* Class::TypedClone(KFbxObject* pContainer, KFbxObject::ECloneType pCloneType) const                   \
        {                                                                                                           \
            KFbxObject* lObjClone = Clone(pContainer, pCloneType);                                                  \
            if (lObjClone == NULL)                                                                                  \
            {                                                                                                       \
                return NULL;                                                                                        \
            }                                                                                                       \
            Class* lTypedClone = KFbxCast<Class>(lObjClone);                                                        \
            if (lTypedClone == NULL)                                                                                \
            {                                                                                                       \
                lObjClone->Destroy();                                                                               \
            }                                                                                                       \
            return lTypedClone;                                                                                     \
        }                                                                                                           \
        Class* Class::CreateForClone(KFbxSdkManager *pManager, char const *pName, const Class* pFrom )              \
        {                                                                                                           \
            return (Class *)pManager->CreateClassFrom(Class::ClassId, pName, pFrom);                                \
        }                                                                                                           \

Definition at line 105 of file kfbxobject.h.

#define KFBXOBJECT_IMPLEMENT_ABSTRACT ( Class   )     KFBXPLUG_IMPLEMENT_ABSTRACT(Class) \

Definition at line 132 of file kfbxobject.h.

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

Definition at line 1480 of file kfbxobject.h.

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

Definition at line 1482 of file kfbxobject.h.


Typedef Documentation

Definition at line 1256 of file kfbxobject.h.

typedef size_t KFbxObjectID

Definition at line 135 of file kfbxobject.h.

typedef int kFbxUpdateId

Definition at line 137 of file kfbxobject.h.


Enumeration Type Documentation

Enumerator:
eFbxCompareProperties 

Definition at line 83 of file kfbxobject.h.


Function Documentation

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

Definition at line 1254 of file kfbxobject.h.

References KFbxObject::ConnectDstObject().

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

Definition at line 1253 of file kfbxobject.h.

References KFbxObject::ConnectSrcObject().

bool KFbxDisconnectAllDst ( KFbxObject pObject,
T *  VC6Dummy = 0  
) [inline]

Definition at line 1275 of file kfbxobject.h.

References KFbxObject::DisconnectAllDstObject().

bool KFbxDisconnectAllSrc ( KFbxObject pObject,
T *  VC6Dummy = 0  
) [inline]

Definition at line 1266 of file kfbxobject.h.

References KFbxObject::DisconnectAllSrcObject().

T* KFbxFindDst ( KFbxObject const *  pObject,
char const *  pName,
kFbxClassId  pClassId,
int  pIndex = 0  
) [inline]

Definition at line 1274 of file kfbxobject.h.

References KFbxObject::FindDstObject().

T* KFbxFindDst ( KFbxObject const *  pObject,
char const *  pName,
int  pIndex = 0  
) [inline]

Definition at line 1273 of file kfbxobject.h.

References KFbxObject::FindDstObject().

T* KFbxFindSrc ( KFbxObject const *  pObject,
char const *  pName,
kFbxClassId  pClassId,
int  pIndex = 0  
) [inline]

Definition at line 1264 of file kfbxobject.h.

References KFbxObject::FindSrcObject().

T* KFbxFindSrc ( KFbxObject const *  pObject,
char const *  pName,
int  pIndex = 0  
) [inline]

Definition at line 1263 of file kfbxobject.h.

References KFbxObject::FindSrcObject().

T* KFbxGetDst ( KFbxObject const *  pObject,
int  pIndex,
kFbxClassId  pClassId  
) [inline]

Definition at line 1272 of file kfbxobject.h.

References KFbxObject::GetDstObject().

T* KFbxGetDst ( KFbxObject const *  pObject,
int  pIndex = 0  
) [inline]

Definition at line 1271 of file kfbxobject.h.

References KFbxObject::GetDstObject().

int KFbxGetDstCount ( KFbxObject const *  pObject,
kFbxClassId  pClassId,
T const *  VC6Dummy = 0  
) [inline]

Definition at line 1270 of file kfbxobject.h.

References KFbxObject::GetDstObjectCount().

int KFbxGetDstCount ( KFbxObject const *  pObject,
T const *  VC6Dummy = 0  
) [inline]

Definition at line 1269 of file kfbxobject.h.

References KFbxObject::GetDstObjectCount().

T* KFbxGetSrc ( KFbxObject const *  pObject,
int  pIndex,
kFbxClassId  pClassId  
) [inline]

Definition at line 1262 of file kfbxobject.h.

References KFbxObject::GetSrcObject().

T* KFbxGetSrc ( KFbxObject const *  pObject,
int  pIndex = 0  
) [inline]

Definition at line 1261 of file kfbxobject.h.

References KFbxObject::GetSrcObject().

int KFbxGetSrcCount ( KFbxObject const *  pObject,
kFbxClassId  pClassId,
T const *  VC6Dummy = 0  
) [inline]

Definition at line 1260 of file kfbxobject.h.

References KFbxObject::GetSrcObjectCount().

int KFbxGetSrcCount ( KFbxObject const *  pObject,
T const *  VC6Dummy = 0  
) [inline]

Definition at line 1259 of file kfbxobject.h.

References KFbxObject::GetSrcObjectCount().