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_UTILS_NAMEHANDLER_H_ 00014 #define _FBXSDK_UTILS_NAMEHANDLER_H_ 00015 00016 #include <fbxsdk/fbxsdk_def.h> 00017 00018 #include <fbxsdk/core/base/fbxarray.h> 00019 #include <fbxsdk/core/base/fbxstring.h> 00020 00021 #include <fbxsdk/fbxsdk_nsbegin.h> 00022 00034 class FBXSDK_DLL FbxNameHandler 00035 { 00036 public: 00041 FbxNameHandler(const char* pInitialName = ""); 00042 00046 FbxNameHandler(FbxNameHandler const& pName); 00047 00048 // !Destructor 00049 ~FbxNameHandler(); 00050 00055 void SetInitialName(const char* pInitialName); 00056 00060 const char* GetInitialName() const; 00061 00066 void SetCurrentName(const char* pNewName); 00067 00071 const char* GetCurrentName() const; 00072 00077 void SetNameSpace(const char* pNameSpace); 00078 00082 const char* GetNameSpace() const; 00083 00087 bool IsRenamed() const; 00088 00092 FbxNameHandler& operator= (FbxNameHandler const& pName); 00093 00104 00115 void SetParentName(const char* pParentName); 00116 00120 const char* GetParentName() const; 00121 00123 00127 FbxArray<FbxString*> GetNameSpaceArray(char identifier); 00128 00129 /***************************************************************************************************************************** 00130 ** WARNING! Anything beyond these lines is for internal use, may not be documented and is subject to change without notice! ** 00131 *****************************************************************************************************************************/ 00132 #ifndef DOXYGEN_SHOULD_SKIP_THIS 00133 private: 00134 FbxString mParentName; 00135 FbxString mInitialName; 00136 FbxString mCurrentName; 00137 FbxString mNameSpace; 00138 #endif /* !DOXYGEN_SHOULD_SKIP_THIS *****************************************************************************************/ 00139 }; 00140 00141 #include <fbxsdk/fbxsdk_nsend.h> 00142 00143 #endif /* _FBXSDK_UTILS_NAMEHANDLER_H_ */