22 #include <unordered_map>
170 typedef std::unordered_map< const char*, EnhancedCustomShapeTokenEnum, rtl::CStringHash, rtl::CStringEqual>
TypeNameHashMap;
173 static TypeNameHashMap aHashMap = []()
176 for (
auto const & pair : pTokenTableArray)
177 res[pair.pS] = pair.pE;
187 int i, nLen = rShapeType.getLength();
188 std::unique_ptr<char[]> pBuf(
new char[ nLen + 1 ]);
189 for ( i = 0; i < nLen; i++ )
190 pBuf[ i ] = static_cast<char>(rShapeType[ i ]);
193 TypeNameHashMap::const_iterator aHashIter( rHashMap.find( pBuf.get() ) );
194 if ( aHashIter != rHashMap.end() )
195 eRetValue = (*aHashIter).second;
208 :
static_cast<sal_uInt32
>(
eToken);
209 return OUString::createFromAscii( pTokenTableArray[ i ].
pS );
EnhancedCustomShapeTokenEnum EASGet(const OUString &rShapeType)
EnhancedCustomShapeTokenEnum
static const TypeNameHashMap & GetNameHashMap()
const TokenTable pTokenTableArray[]
EnhancedCustomShapeTokenEnum pE
static const OUString & getNameFromToken(sal_Int32 nToken)
std::unordered_map< const char *, EnhancedCustomShapeTokenEnum, rtl::CStringHash, rtl::CStringEqual > TypeNameHashMap