- Main Page
- Classes
- Files
- Directories

- File List
- File Members

# fbxlayercontainer.h

Go to the documentation of this file.

    00001 /****************************************************************************************
    00002
    00003    Copyright (C) 2013 Autodesk, Inc.
    00004    All rights reserved.
    00005
    00006    Use of this software is subject to the terms of the Autodesk license agreement
    00007    provided at the time of installation or download, or which otherwise accompanies
    00008    this software in either electronic or hard copy form.
    00009
    00010 ****************************************************************************************/
    00011
    00013 #ifndef _FBXSDK_SCENE_GEOMETRY_LAYER_CONTAINER_H_
    00014 #define _FBXSDK_SCENE_GEOMETRY_LAYER_CONTAINER_H_
    00015
    00016 #include <fbxsdk/fbxsdk_def.h>
    00017
    00018 #include <fbxsdk/scene/geometry/fbxnodeattribute.h>
    00019 #include <fbxsdk/scene/geometry/fbxlayer.h>
    00020
    00021 #include <fbxsdk/fbxsdk_nsbegin.h>
    00022
    00029 class FBXSDK_DLL FbxLayerContainer : public FbxNodeAttribute
    00030 {
    00031     FBXSDK_OBJECT_DECLARE(FbxLayerContainer,FbxNodeAttribute);
    00032 public:
    00033
    00036     virtual FbxNodeAttribute::EType GetAttributeType() const;
    00037
    00042
    00046     int CreateLayer();
    00047
    00049     void ClearLayers();
    00050
    00054     int GetLayerCount() const;
    00055
    00061     int GetLayerCount(FbxLayerElement::EType pType,  bool pUVCount=false) const;
    00062
    00067     FbxLayer* GetLayer(int pIndex);
    00068
    00073     FbxLayer const* GetLayer(int pIndex) const;
    00074
    00083     FbxLayer* GetLayer(int pIndex, FbxLayerElement::EType pType, bool pIsUV=false);
    00084
    00093     FbxLayer const* GetLayer(int pIndex, FbxLayerElement::EType pType, bool pIsUV=false) const;
    00094
    00103     int GetLayerIndex(int pIndex, FbxLayerElement::EType pType, bool pIsUV=false) const;
    00104
    00111     int GetLayerTypedIndex(int pGlobalIndex, FbxLayerElement::EType pType, bool pIsUV=false) const;
    00113
    00119     bool ConvertDirectToIndexToDirect(int pLayer);
    00120
    00121 /*****************************************************************************************************************************
    00122 ** WARNING! Anything beyond these lines is for internal use, may not be documented and is subject to change without notice! **
    00123 *****************************************************************************************************************************/
    00124 #ifndef DOXYGEN_SHOULD_SKIP_THIS
    00125     virtual FbxObject& Copy(const FbxObject& pObject);
    00126
    00127     int  GTC(FbxUInt i, int j);
    00128     void* GT (int  i,    FbxUInt l, int j);
    00129     int  AT (void* t,    FbxUInt l, int j);
    00130     int  GTI(char const* n, FbxUInt l, int j);
    00131     int  GMC(FbxUInt i, void* n = NULL);
    00132     void* GM (int  i,    FbxUInt l, void* n = NULL);
    00133     int  AM (void* m,    FbxUInt l, void* n = NULL, bool b = false);
    00134     int  GMI(char const* n, FbxUInt l, void* d = NULL);
    00135
    00136     int AddToLayerElementsList(FbxLayerElement* pLEl);
    00137     void RemoveFromLayerElementsList(FbxLayerElement* pLEl);
    00138
    00139 protected:
    00140     virtual void Destruct(bool pRecursive);
    00141
    00142     void CopyLayers(FbxLayerContainer const* pLayerContainer);
    00143
    00144     virtual void SetDocument(FbxDocument* pDocument);
    00145     virtual bool ConnectNotify (FbxConnectEvent const &pEvent);
    00146
    00147     FbxArray<FbxLayer*> mLayerArray;
    00148     FbxArray<FbxLayerElement*> mLayerElementsList;
    00149 #endif /* !DOXYGEN_SHOULD_SKIP_THIS *****************************************************************************************/
    00150 };
    00151
    00152 #include <fbxsdk/fbxsdk_nsend.h>
    00153
    00154 #endif /* _FBXSDK_SCENE_GEOMETRY_LAYER_CONTAINER_H_ */