43 : fNoVoxelX(0),fNoVoxelY(0),fNoVoxelZ(0),
44 fMinX(0),fMinY(0),fMinZ(0),
45 fMaxX(0),fMaxY(0),fMaxZ(0),
46 fFilename(fname),fSliceLocation(0)
86 G4cout <<
" DicomPhantomZSliceHeader reading number of materials "
90 for(
G4int im = 0; im < nmate; im++ ){
91 fin >> mateindex >> matename;
93 G4cout <<
" DicomPhantomZSliceHeader reading material " << im <<
" : "
94 << mateindex <<
" " << matename <<
G4endl;
98 G4Exception(
"DicomPhantomZSliceHeader::DicomPhantomZSliceHeader",
99 "A material is found in file that is not built in the C++ code",
110 <<
" " << fNoVoxelZ <<
G4endl;
118 G4cout <<
" Extension in X " <<
fMinX <<
" " << fMaxX << G4endl
119 <<
" Extension in Y " <<
fMinY <<
" " << fMaxY << G4endl
120 <<
" Extension in Z " <<
fMinZ <<
" " << fMaxZ <<
G4endl;
130 std::vector<G4Material*>::const_iterator matite;
131 for( matite = matTab->begin(); matite != matTab->end(); ++matite ) {
132 if( (*matite)->GetName() == mateName ) {
return true; }
152 G4cerr <<
"DicomPhantomZSliceHeader error adding two slice headers:\
153 !!! Different number of voxels: "
158 G4Exception(
"DicomPhantomZSliceHeader::DicomPhantomZSliceHeader",
164 G4cerr <<
"DicomPhantomZSliceHeader error adding two slice headers:\
165 !!! Different extensions: "
171 G4Exception(
"DicomPhantomZSliceHeader::operator+",
"",
178 G4cerr <<
"DicomPhantomZSliceHeader error adding two slice headers:\
179 !!! Different number of materials: " <<
fMaterialNames.size() <<
" =? "
180 << fMaterialNames2.size() <<
G4endl;
181 G4Exception(
"DicomPhantomZSliceHeader::operator+",
"",
186 G4cerr <<
"DicomPhantomZSliceHeader error adding two slice headers:\
187 !!! Different material number " << ii <<
" : "
189 << fMaterialNames2[ii] <<
G4endl;
190 G4Exception(
"DicomPhantomZSliceHeader::operator+",
"",
200 G4cerr <<
"DicomPhantomZSliceHeader error adding two slice headers: !!!\
201 Slices are not contiguous in Z "
205 G4Exception(
"DicomPhantomZSliceHeader::operator+",
"",
224 G4cout <<
"DicomPhantomZSliceHeader::Dumping Z Slice data to "
237 G4String descript =
"DicomPhantomZSliceHeader::DumpToFile: could not open "
267 G4String descript =
"DicomPhantomZSliceHeader::DumpToFile: could not open "
276 for(
G4int i = 0; i < nMaterials; ++i) {
280 G4String descript =
"String : " + str1 +
" supposed to be integer";
281 G4Exception(
"DicomPhantomZSliceHeader::ReadDataFromFile - error in \
282 formatting: missing material index",
"",
FatalException,descript.c_str());
284 G4int index = g4s2n<G4int>(str1);
285 if(index > nMaterials || index < 0) {
286 G4String descript =
"Index : " + str1;
287 G4Exception(
"DicomPhantomZSliceHeader::ReadDataFromFile - error:\
298 in >> tmpMinX >> tmpMaxX;
299 in >> tmpMinY >> tmpMaxY;
300 in >> tmpMinZ >> tmpMaxZ;
static G4MaterialTable * GetMaterialTable()
std::vector< G4Material * > G4MaterialTable
G4GLOB_DLL std::ostream G4cout
G4double GetRadialTolerance() const
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
T max(const T t1, const T t2)
brief Return the largest of the two arguments
T min(const T t1, const T t2)
brief Return the smallest of the two arguments
static G4GeometryTolerance * GetInstance()
G4GLOB_DLL std::ostream G4cerr