37 :RWB(NULL),verboseLevel(1)
48 G4cout <<
"Warning: G4NeutronHPReactionWhiteBoard is tried doubly opening" <<
G4endl;
57 G4cout <<
"Warning: try to access G4NeutronHPReactionWhiteBoard before opening" <<
G4endl;
69 std::ifstream* in =
new std::ifstream ( compfilename , std::ios::binary | std::ios::ate );
73 G4int file_size = in->tellg();
74 in->seekg( 0 , std::ios::beg );
75 Bytef* compdata =
new Bytef[ file_size ];
78 in->read( (
char*)compdata , file_size );
81 uLongf complen = (uLongf) ( file_size*4 );
82 Bytef* uncompdata =
new Bytef[complen];
84 while ( Z_OK !=
uncompress ( uncompdata , &complen , compdata , file_size ) ) {
88 uncompdata =
new Bytef[complen];
97 std::ifstream thefData( filename , std::ios::in | std::ios::ate );
98 if ( thefData.good() ) {
99 G4int file_size = thefData.tellg();
100 thefData.seekg( 0 , std::ios::beg );
101 char* filedata =
new char[ file_size ];
103 thefData.read( filedata , file_size );
106 data =
new G4String ( filedata , file_size );
111 iss.setstate( std::ios::badbit );
114 if (data != NULL) iss.str(*data);
116 in->close();
delete in;
122 G4cout <<
"You are setting a new verbose level for neutron HP package." <<
G4endl;
123 G4cout <<
"the new value will be used in whole of the neutron HP package, i.e., models and cross sections for Capture, Elastic, Fission and Inelastic interaction." <<
G4endl;
void OpenReactionWhiteBoard()
G4NeutronHPReactionWhiteBoard * GetReactionWhiteBoard()
void GetDataStream(G4String, std::istringstream &iss)
G4GLOB_DLL std::ostream G4cout
int ZEXPORT uncompress(Bytef *dest, uLongf *destLen, const Bytef *source, uLong sourceLen)
void SetVerboseLevel(G4int i)
G4NeutronHPReactionWhiteBoard * RWB
static G4ThreadLocal G4NeutronHPManager * instance