fbxsdk/utils/fbxrenamingstrategybase.h Source File
 
 
 
fbxsdk/utils/fbxrenamingstrategybase.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_UTILS_RENAMINGSTRATEGY_BASE_H_
00014 #define _FBXSDK_UTILS_RENAMINGSTRATEGY_BASE_H_
00015 
00016 #include <fbxsdk/fbxsdk_def.h>
00017 
00018 #include <fbxsdk/scene/fbxscene.h>
00019 #include <fbxsdk/utils/fbxnamehandler.h>
00020 
00021 #include <fbxsdk/fbxsdk_nsbegin.h>
00022 
00026 class FBXSDK_DLL FbxRenamingStrategyBase
00027 {
00028 public:
00029 
00031     FbxRenamingStrategyBase();
00032 
00036     FbxRenamingStrategyBase(char pNameSpaceSymbol);
00037 
00039     virtual ~FbxRenamingStrategyBase();
00040 
00045     virtual bool DecodeScene(FbxScene* pScene)=0;
00046 
00051     virtual bool EncodeScene(FbxScene* pScene)=0;
00052 
00057     virtual bool DecodeString(FbxNameHandler& pString)=0;
00058 
00064     virtual bool EncodeString(FbxNameHandler& pString, bool pIsPropertyName=false)=0;
00065 
00067     virtual void CleanUp();
00068 
00069 /*****************************************************************************************************************************
00070 ** WARNING! Anything beyond these lines is for internal use, may not be documented and is subject to change without notice! **
00071 *****************************************************************************************************************************/
00072 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00073     struct NameCell
00074     {
00075         NameCell(const char* pName) :
00076     mName(pName),
00077         mInstanceCount(0)
00078     {
00079     }
00080 
00081     FbxString mName;
00082     int mInstanceCount;         
00083     };    
00084 
00085     char                     mNamespaceSymbol;
00086     FbxCharPtrSet                                       mStringNameArray;
00087 #endif /* !DOXYGEN_SHOULD_SKIP_THIS *****************************************************************************************/
00088 };
00089 
00090 #include <fbxsdk/fbxsdk_nsend.h>
00091 
00092 #endif /* _FBXSDK_UTILS_RENAMINGSTRATEGY_BASE_H_ */