- Main Page
- Classes
- Files
- Directories
- Examples

- File List
- File Members

Classes | Defines | Functions

# fbxobject.h File Reference

`#include <fbxsdk/fbxsdk_def.h>`
`#include <fbxsdk/core/fbxplug.h>`
`#include <fbxsdk/core/fbxproperty.h>`
`#include <fbxsdk/core/fbxstream.h>`
`#include <fbxsdk/core/base/fbxstringlist.h>`
`#include <fbxsdk/fbxsdk_nsbegin.h>`
`#include <fbxsdk/fbxsdk_nsend.h>`

Go to the source code of this file.

## Classes
class | FbxObject
| The base class of most FBX objects. More...
class | FbxIterator< FbxProperty >
| A utility class for iterating over the properties (FbxProperty) of any FbxObject. More...
class | FbxIteratorSrcBase
| A utility class for iterating over source objects that connect to property (FbxProperty) or object (FbxObject). More...
class | FbxIteratorSrc< Type >
| A utility class for iterating over source objects that connect to property (FbxProperty) or object (FbxObject). More...
class | FbxIteratorDstBase
| A utility class for iterating over destination objects that connect to property (FbxProperty) or object (FbxObject). More...
class | FbxIteratorDst< Type >
| A utility class for iterating over destination objects that connect to property (FbxProperty) or object (FbxObject). More...
class | FbxObjectPropertyChanged
## Defines
#define | FBXSDK_OBJECT_DECLARE(Class, Parent)
| Macro used to declare a new class derived from FbxObject.
#define | FBXSDK_ABSTRACT_OBJECT_DECLARE(Class, Parent)
| Macro used to declare a new abstract class derived from FbxObject.
#define | FBXSDK_OBJECT_IMPLEMENT(Class)
| Macro used to implement a new class derived from FbxObject.
#define | FBXSDK_ABSTRACT_OBJECT_IMPLEMENT(Class) FBXSDK_ABSTRACT_PLUG_IMPLEMENT(Class) \
| Macro used to implement a new abstract class derived from FbxObject.
#define | FbxForEach(Iterator, Object) for ( (Object)=(Iterator).GetFirst(); (Object)!=0; (Object)=(Iterator).GetNext() )
| Macro used to iterate over source or destination objects that connect to property (FbxProperty) or object (FbxObject).
#define | FbxForEachReverse(Iterator, Object) for ( Object=(Iterator).GetLast(); (Object)!=0; Object=(Iterator).GetPrevious() )
| Macro used to reversely iterate over source or destination objects that connect to property (FbxProperty) or object (FbxObject)
## Functions
bool | FbxConnectSrc (FbxObject *pDstObject, FbxObject *pSrcObject)
bool | FbxConnectDst (FbxObject *pSrcObject, FbxObject *pDstObject)
template<class T >
int | FbxGetSrcCount (const FbxObject *pObject)
template<class T >
int | FbxGetSrcCount (const FbxObject *pObject, FbxClassId pClassId)
template<class T >
T * | FbxGetSrc (const FbxObject *pObject, int pIndex=0)
template<class T >
T * | FbxGetSrc (const FbxObject *pObject, int pIndex, FbxClassId pClassId)
template<class T >
T * | FbxFindSrc (const FbxObject *pObject, const char *pName, int pIndex=0)
template<class T >
T * | FbxFindSrc (const FbxObject *pObject, const char *pName, FbxClassId pClassId, int pIndex=0)
template<class T >
bool | FbxDisconnectAllSrc (FbxObject *pObject)
template<class T >
int | FbxGetDstCount (const FbxObject *pObject)
template<class T >
int | FbxGetDstCount (const FbxObject *pObject, FbxClassId pClassId)
template<class T >
T * | FbxGetDst (const FbxObject *pObject, int pIndex=0)
template<class T >
T * | FbxGetDst (const FbxObject *pObject, int pIndex, FbxClassId pClassId)
template<class T >
T * | FbxFindDst (const FbxObject *pObject, const char *pName, int pIndex=0)
template<class T >
T * | FbxFindDst (const FbxObject *pObject, const char *pName, FbxClassId pClassId, int pIndex=0)
template<class T >
bool | FbxDisconnectAllDst (const FbxObject *pObject)

## Detailed Description

Definition in file fbxobject.h.

## Define Documentation

#define FBXSDK_OBJECT_DECLARE | ( |  | Class,
|  |  | Parent
| ) |  |

Search for all occurrences
Value:

    FBXSDK_PLUG_DECLARE(Class)      /* this also set public */                  \
        typedef Parent ParentClass;                                                 \
        static Class* Create(FbxObject* pContainer, const char* pName);             \
        virtual ~Class(){};                                                         \
    private:                                                                        \
        Class(const Class&);                                                        \
        Class& operator=(const Class&);                                             \

Macro used to declare a new class derived from FbxObject.

Examples:
  ExportScene03/MyKFbxMesh.h.

Definition at line 35 of file fbxobject.h.

#define FBXSDK_ABSTRACT_OBJECT_DECLARE | ( |  | Class,
|  |  | Parent
| ) |  |

Search for all occurrences
Value:

    FBXSDK_ABSTRACT_PLUG_DECLARE(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 FbxObject.

Definition at line 45 of file fbxobject.h.

#define FBXSDK_OBJECT_IMPLEMENT | ( |  | Class | ) |

Search for all occurrences
Value:

    FBXSDK_PLUG_IMPLEMENT(Class)                                                \
        Class* Class::Create(FbxObject* pContainer, const char* pName)              \
        {                                                                           \
            if( !pContainer ) return NULL;                                          \
            FbxManager* Manager = pContainer->GetFbxManager();                      \
            FBX_ASSERT(Manager);                                                    \
            Class* ClassPtr = 0;                                                    \
            ClassPtr = (Class*)Manager->CreateNewObjectFromClassId(Class::ClassId,  \
                pName, pContainer);                                                 \
            return ClassPtr;                                                        \
        }                                                                           \

Macro used to implement a new class derived from FbxObject.

Examples:
  ExportScene03/MyKFbxMesh.cxx.

Definition at line 53 of file fbxobject.h.

#define FBXSDK_ABSTRACT_OBJECT_IMPLEMENT | ( |  | Class | ) | FBXSDK_ABSTRACT_PLUG_IMPLEMENT(Class) \

Search for all occurrences

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

Definition at line 67 of file fbxobject.h.

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

Search for all occurrences

Macro used to iterate over source or destination objects that connect to property (FbxProperty) or object (FbxObject).

Definition at line 1604 of file fbxobject.h.

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

Search for all occurrences

Macro used to reversely iterate over source or destination objects that connect to property (FbxProperty) or object (FbxObject)

Definition at line 1607 of file fbxobject.h.

## Function Documentation

bool FbxConnectSrc | ( | FbxObject * | pDstObject,
|  | FbxObject * | pSrcObject
| ) |  | `[inline]`

Search for all occurrences

Definition at line 1167 of file fbxobject.h.

    { return (pSrcObject && pDstObject) ? pDstObject->ConnectSrcObject(pSrcObject) : 0; }

bool FbxConnectDst | ( | FbxObject * | pSrcObject,
|  | FbxObject * | pDstObject
| ) |  | `[inline]`

Search for all occurrences

Examples:
  UserProperties/main.cxx.

Definition at line 1168 of file fbxobject.h.

    { return (pSrcObject && pDstObject) ? pSrcObject->ConnectDstObject(pDstObject) : 0; }

int FbxGetSrcCount | ( | const FbxObject * | pObject | ) | `[inline]`

Search for all occurrences

Definition at line 1171 of file fbxobject.h.

    { return pObject ? pObject->GetSrcObjectCount(T::ClassId) : 0; }

int FbxGetSrcCount | ( | const FbxObject * | pObject,
|  | FbxClassId | pClassId
| ) |  | `[inline]`

Search for all occurrences

Definition at line 1172 of file fbxobject.h.

    { return pObject ? pObject->GetSrcObjectCount(pClassId) : 0;     }

T* FbxGetSrc | ( | const FbxObject * | pObject,
|  | int | pIndex = `0`
| ) |  | `[inline]`

Search for all occurrences

Definition at line 1173 of file fbxobject.h.

    { return pObject ? (T *) pObject->GetSrcObject(T::ClassId,pIndex) : 0; }

T* FbxGetSrc | ( | const FbxObject * | pObject,
|  | int | pIndex,
|  | FbxClassId | pClassId
| ) |  | `[inline]`

Search for all occurrences

Definition at line 1174 of file fbxobject.h.

    { return pObject ? (T *) pObject->GetSrcObject(pClassId,pIndex) : 0;    }

T* FbxFindSrc | ( | const FbxObject * | pObject,
|  | const char * | pName,
|  | int | pIndex = `0`
| ) |  | `[inline]`

Search for all occurrences

Definition at line 1175 of file fbxobject.h.

    { return pObject ? (T *) pObject->FindSrcObject(T::ClassId,pName,pIndex) : 0;   }

T* FbxFindSrc | ( | const FbxObject * | pObject,
|  | const char * | pName,
|  | FbxClassId | pClassId,
|  | int | pIndex = `0`
| ) |  | `[inline]`

Search for all occurrences

Definition at line 1176 of file fbxobject.h.

    { return pObject ? (T *) pObject->FindSrcObject(pClassId,pName,pIndex) : 0; }

bool FbxDisconnectAllSrc | ( | FbxObject * | pObject | ) | `[inline]`

Search for all occurrences

Definition at line 1178 of file fbxobject.h.

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

int FbxGetDstCount | ( | const FbxObject * | pObject | ) | `[inline]`

Search for all occurrences

Definition at line 1181 of file fbxobject.h.

    { return pObject ? pObject->GetDstObjectCount(T::ClassId) : 0; }

int FbxGetDstCount | ( | const FbxObject * | pObject,
|  | FbxClassId | pClassId
| ) |  | `[inline]`

Search for all occurrences

Definition at line 1182 of file fbxobject.h.

    { return pObject ? pObject->GetDstObjectCount(pClassId) : 0;     }

T* FbxGetDst | ( | const FbxObject * | pObject,
|  | int | pIndex = `0`
| ) |  | `[inline]`

Search for all occurrences

Definition at line 1183 of file fbxobject.h.

    { return pObject ? (T *) pObject->GetDstObject(T::ClassId,pIndex) : 0; }

T* FbxGetDst | ( | const FbxObject * | pObject,
|  | int | pIndex,
|  | FbxClassId | pClassId
| ) |  | `[inline]`

Search for all occurrences

Definition at line 1184 of file fbxobject.h.

    { return pObject ? (T *) pObject->GetDstObject(pClassId,pIndex) : 0;    }

T* FbxFindDst | ( | const FbxObject * | pObject,
|  | const char * | pName,
|  | int | pIndex = `0`
| ) |  | `[inline]`

Search for all occurrences

Definition at line 1185 of file fbxobject.h.

    { return pObject ? (T *) pObject->FindDstObject(T::ClassId,pName,pIndex) : 0;   }

T* FbxFindDst | ( | const FbxObject * | pObject,
|  | const char * | pName,
|  | FbxClassId | pClassId,
|  | int | pIndex = `0`
| ) |  | `[inline]`

Search for all occurrences

Definition at line 1186 of file fbxobject.h.

    { return pObject ? (T *) pObject->FindDstObject(pClassId,pName,pIndex) : 0; }

bool FbxDisconnectAllDst | ( | const FbxObject * | pObject | ) | `[inline]`

Search for all occurrences

Definition at line 1188 of file fbxobject.h.

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