36 G4NeutronHPManager::G4NeutronHPManager()
37 :RWB(NULL),verboseLevel(1)
41 G4NeutronHPManager::~G4NeutronHPManager()
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;
124 verboseLevel = newValue;
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)
const XML_Char const XML_Char * data