fbxsdk/core/fbxsymbol.h Source File

fbxsymbol.h
Go to the documentation of this file.
1 /****************************************************************************************
2 
3  Copyright (C) 2015 Autodesk, Inc.
4  All rights reserved.
5 
6  Use of this software is subject to the terms of the Autodesk license agreement
7  provided at the time of installation or download, or which otherwise accompanies
8  this software in either electronic or hard copy form.
9 
10 ****************************************************************************************/
11 
13 #ifndef _FBXSDK_CORE_SYMBOL_H_
14 #define _FBXSDK_CORE_SYMBOL_H_
15 
16 #include <fbxsdk/fbxsdk_def.h>
17 
20 
21 #include <fbxsdk/fbxsdk_nsbegin.h>
22 
26 {
27 public:
32 
38  FbxSymbol(const char* pName, const char* pRealm);
39 
41  ~FbxSymbol();
43 
52  unsigned int GetID() const;
54 
62  bool operator==(FbxSymbol const& pSymbol) const;
63 
67  bool operator!=(FbxSymbol const& pSymbol) const;
69 
70 private:
71  unsigned int mID;
72 };
73 
75 
76 
82 {
83 public:
88 
91 
96  FbxStringSymbol(const char* pName);
97 
99  FbxStringSymbol(const FbxStringSymbol& pOther);
100 
102  ~FbxStringSymbol();
104 
106  inline operator const char*() const { return mItem ? ((const char*) mItem->GetKey()) : NULL; }
107 
108 
112  inline bool IsEmpty() const
113  {
114  return !mItem || mItem->GetKey().IsEmpty();
115  }
116 
118  static void AllocateGlobalStringSymbolMap();
119 
121  static void FreeGlobalStringSymbolMap();
122 
127  FbxStringSymbol& operator=(const char* pName);
128 
129 private:
131 };
132 
133 #include <fbxsdk/fbxsdk_nsend.h>
134 
135 #endif /* _FBXSDK_CORE_SYMBOL_H_ */
FBX SDK environment definition.
#define NULL
Definition: fbxarch.h:210
This class is to mark a string as symbol.
Definition: fbxsymbol.h:81
This class implements an efficient map based on key comparison, which stores key-value pairs...
Definition: fbxmap.h:68
Defines a symbol string.
Definition: fbxsymbol.h:25
#define FBXSDK_DLL
Definition: fbxarch.h:173
FbxMap< FbxString, int, FbxStringCompare > FbxStringSymbolMap
Definition: fbxsymbol.h:74
bool IsEmpty() const
Determine the symbol empty or not.
Definition: fbxsymbol.h:112
StorageType::RecordType RecordType
Definition: fbxmap.h:98