fbxnamehandler.h

Go to the documentation of this file.
00001 /****************************************************************************************
00002  
00003    Copyright (C) 2012 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_UTILS_NAMEHANDLER_H_
00014 #define _FBXSDK_UTILS_NAMEHANDLER_H_
00015 
00016 #include <fbxsdk/fbxsdk_def.h>
00017 
00018 #include <fbxsdk/core/base/fbxstring.h>
00019 #include <fbxsdk/core/base/fbxarray.h>
00020 
00021 #include <fbxsdk/fbxsdk_nsbegin.h>
00022 
00034 class FBXSDK_DLL FbxNameHandler
00035 {
00036 public:
00037     
00042     FbxNameHandler(char const* pInitialName = "");
00043 
00047     FbxNameHandler(FbxNameHandler const& pName);
00048 
00049     // !Destructor
00050     ~FbxNameHandler();
00051 
00056     void SetInitialName(char const* pInitialName);
00057 
00061     char const* GetInitialName() const;
00062 
00067     void SetCurrentName(char const* pNewName);
00068 
00072     char const* GetCurrentName() const;
00073 
00078     void SetNameSpace(char const* pNameSpace);
00079 
00083     char const* GetNameSpace() const;
00084 
00088     bool IsRenamed() const;
00089     
00093     FbxNameHandler& operator= (FbxNameHandler const& pName);
00094 
00096 //
00097 //  WARNING!
00098 //
00099 //    Anything beyond these lines may not be documented accurately and is 
00100 //     subject to change without notice.
00101 //
00103 
00104 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00105 
00116 
00127     void SetParentName(char const* pParentName);
00128 
00132     char const* GetParentName() const;
00133 
00135 
00139     FbxArray<FbxString*> GetNameSpaceArray(char identifier);
00140 
00141 private:
00142     FbxString mParentName;
00143     FbxString mInitialName;
00144     FbxString mCurrentName;
00145     FbxString mNameSpace;
00146 #endif // #ifndef DOXYGEN_SHOULD_SKIP_THIS
00147 };
00148 
00149 #include <fbxsdk/fbxsdk_nsend.h>
00150 
00151 #endif /* _FBXSDK_UTILS_NAMEHANDLER_H_ */