CLHEP 2.0.4.7 Reference Documentation
CLHEP Home Page CLHEP Documentation CLHEP Bug Reports |
00001 // $Id 00002 // -*- C++ -*- 00003 // 00004 // ----------------------------------------------------------------------- 00005 // HEP Random 00006 // --- engineIDulong --- 00007 // function header file 00008 // ----------------------------------------------------------------------- 00009 00010 // Class generating new engines from streamed saves. 00011 00012 // ======================================================================= 00013 // M Fischler - Created: Mar. 8, 2005 00014 // ======================================================================= 00015 00016 #ifndef engineIDulong_h 00017 #define engineIDulong_h 1 00018 00019 namespace CLHEP { 00020 00021 unsigned long crc32ul(const std::string & s); 00022 00023 template <class E> 00024 unsigned long engineIDulong() { 00025 static unsigned long id = crc32ul(E::engineName()); 00026 return id; 00027 } 00028 00029 } // namespace CLHEP 00030 00031 #ifdef ENABLE_BACKWARDS_COMPATIBILITY 00032 // backwards compatibility will be enabled ONLY in CLHEP 1.9 00033 using namespace CLHEP; 00034 #endif 00035 00036 00037 #endif 00038