Geant4 Cross Reference |
1 // -*- C++ -*- 1 2 // 3 // ------------------------------------------- 4 // HEP Random 5 // --- RandBit --- 6 // class implementation f 7 // ------------------------------------------- 8 // This file is part of Geant4 (simulation too 9 10 // =========================================== 11 // M Fischler - Created from RandFlat.cc, 12 // since inheritance takes care of it. 13 // M Fischler - put and get to/from stream 14 // =========================================== 15 16 #include "CLHEP/Random/RandBit.h" 17 #include <iostream> 18 #include <string> 19 20 namespace CLHEP { 21 22 std::string RandBit::name() const {return "Ran 23 24 RandBit::~RandBit() { 25 } 26 27 std::ostream & RandBit::put ( std::ostream & o 28 os << " " << name() << "\n"; 29 RandFlat::put(os); 30 return os; 31 } 32 33 std::istream & RandBit::get ( std::istream & i 34 std::string inName; 35 is >> inName; 36 if (inName != name()) { 37 is.clear(std::ios::badbit | is.rdstate()); 38 std::cerr << "Mismatch when expecting to r 39 << name() << " distribution\n" 40 << "Name found was " << inName 41 << "\nistream is left in the badbit st 42 return is; 43 } 44 RandFlat::get(is); 45 return is; 46 } 47 48 } // namespace CLHEP 49 50