forward.h

00001 #ifndef GM_FORWARD_H 00002 #define GM_FORWARD_H 00003 00004 #ifdef __GNUC__ 00005 #if __GNUC__ < 3 00006 #include <hash_map.h> 00007 namespace Sgi { using ::hash_map; }; // inherit globals 00008 #else 00009 #include <ext/hash_map> 00010 #if __GNUC_MINOR__ == 0 00011 namespace Sgi = std; // GCC 3.0 00012 #else 00013 namespace Sgi = ::__gnu_cxx; // GCC 3.1 and later 00014 namespace __gnu_cxx 00015 { 00016 using namespace std; 00017 00018 template<> 00019 struct hash<string> 00020 { 00021 size_t operator()(const string& s) const 00022 { 00023 const collate<char>& c = use_facet<collate<char> >(locale::classic()); 00024 return c.hash(s.c_str(), s.c_str() + s.size()); 00025 } 00026 }; 00027 } 00028 #endif 00029 #endif 00030 #else // ... there are other compilers, right? 00031 #include <hash_map> 00032 namespace Sgi = stdext; 00033 #endif 00034 00035 00036 // forward definitions in correct namespace 00037 00038 namespace GNUMessenger 00039 { 00040 00041 class XMLManager; 00042 class SettingsManager; 00043 class ContactManager; 00044 class ProtocolManager; 00045 00046 class VBuffer; 00047 class XMLNode; 00048 class Protocol; 00049 class Contact; 00050 class NetConf; 00051 class Folder; 00052 00053 } 00054 00055 #endif

Generated on Tue Oct 5 14:41:47 2004 for GNU Messenger by doxygen 1.3.8