StrMap.h

Go to the documentation of this file.
00001 //***************************************************************************************
00002 // File supervisor: Crosswalk team
00012 //***************************************************************************************
00013 
00014 
00015 #ifndef __STRMAP_H__
00016 #define __STRMAP_H__
00017 
00018 // Disable "identifier was truncated to '255' characters in the debug information" warning.
00019 #if defined(_WIN32) || defined(_WIN32_WCE) || defined(_XBOX)
00020 #pragma warning( disable : 4786 )
00021 #endif // defined(_WIN32) || defined(_WIN32_WCE) || defined(_XBOX)
00022 
00023 #ifdef FTK_KERNEL
00024 #include <map>          // map
00025 #endif // FTK_KERNEL
00026 
00027 #include <SIBCUtil.h>   // SI_Char, _SI_STRCMP
00028 
00038 struct StrLessPred
00039 {
00045     inline bool operator () ( const SI_Char* in_psz1, const SI_Char* in_psz2 ) const
00046     {
00047         return (_SI_STRCMP(in_psz1, in_psz2) < 0);
00048     }
00049 };
00050 
00064 #ifdef FTK_KERNEL
00065 template <class ValueType>
00066 class SI_StrMap : public std::map<const SI_Char*, ValueType, StrLessPred>
00067 {
00068 };
00069 
00070 #endif // FTK_KERNEL
00071 #endif //__STRMAP_H__