Geant4-11
RandBit.cc
Go to the documentation of this file.
1// -*- C++ -*-
2//
3// -----------------------------------------------------------------------
4// HEP Random
5// --- RandBit ---
6// class implementation file
7// -----------------------------------------------------------------------
8// This file is part of Geant4 (simulation toolkit for HEP).
9
10// =======================================================================
11// M Fischler - Created from RandFlat.cc, deleting almost all the content
12// since inheritance takes care of it. 2/15/00
13// M Fischler - put and get to/from streams 12/10/04
14// =======================================================================
15
17#include <iostream>
18#include <string>
19
20namespace CLHEP {
21
22std::string RandBit::name() const {return "RandBit";}
23
25}
26
27std::ostream & RandBit::put ( std::ostream & os ) const {
28 os << " " << name() << "\n";
29 RandFlat::put(os);
30 return os;
31}
32
33std::istream & RandBit::get ( std::istream & is ) {
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 read state of a "
39 << name() << " distribution\n"
40 << "Name found was " << inName
41 << "\nistream is left in the badbit state\n";
42 return is;
43 }
44 RandFlat::get(is);
45 return is;
46}
47
48} // namespace CLHEP
49
std::string name() const
Definition: RandBit.cc:22
std::istream & get(std::istream &is)
Definition: RandBit.cc:33
std::ostream & put(std::ostream &os) const
Definition: RandBit.cc:27
virtual ~RandBit()
Definition: RandBit.cc:24
std::ostream & put(std::ostream &os) const
Definition: RandFlat.cc:157
std::istream & get(std::istream &is)
Definition: RandFlat.cc:173
Definition: DoubConv.h:17