Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00020
00021 #ifndef __VR3MAP_H__
00022 #define __VR3MAP_H__
00023
00025 namespace VR3Map {
00026
00028
00034 struct Less : std::binary_function<std::string, std::string, bool> {
00035
00036 #if defined(_WIN32) || defined(_WIN64) // windows
00037
00039
00040 struct nocase_compare : public binary_function<unsigned char,unsigned char,bool> {
00041 bool operator() (const unsigned char& c1, const unsigned char& c2) const
00042 { return tolower (c1) < tolower (c2); }
00043 };
00044
00046 bool operator() (const std::string & s1, const std::string & s2) const {
00047 return lexicographical_compare
00048 ( s1.begin (), s1.end (),
00049 s2.begin (), s2.end (),
00050 nocase_compare () );
00051 }
00052
00053 #else // assume unix-like system
00054
00056 bool operator() (const std::string & s1, const std::string & s2) const {
00057 return (s1 < s2)
00058 }
00059
00060 #endif
00061
00062 };
00063
00064 }
00065
00066 #endif