1 // $Id 2 // -*- C++ -*- 3 // 4 // ----------------------------------------------------------------------- 5 // HEP Random 6 // --- engineIDulong --- 7 // function header file 8 // ----------------------------------------------------------------------- 9 10 // Class generating new engines from streamed saves. 11 12 // ======================================================================= 13 // M Fischler - Created: Mar. 8, 2005 14 // ======================================================================= 15 16 #ifndef engineIDulong_h 17 #define engineIDulong_h 1 18 19 namespace CLHEP { 20 21 unsigned long crc32ul(const std::string & s); 22 23 template <class E> engineIDulong()24unsigned long engineIDulong() { 25 static const unsigned long id = crc32ul(E::engineName()); 26 return id; 27 } 28 29 } // namespace CLHEP 30 31 #ifdef ENABLE_BACKWARDS_COMPATIBILITY 32 // backwards compatibility will be enabled ONLY in CLHEP 1.9 33 using namespace CLHEP; 34 #endif 35 36 37 #endif 38 39