60#include "G4SDManager.hh"
61#include "G4MultiFunctionalDetector.hh"
62#include "G4VPrimitiveScorer.hh"
90 for(std::size_t i = 0; i <
fRunMap.size(); ++i)
113 for(std::size_t idet = 0; idet < mfdName.size(); ++idet)
120 (SDman->FindSensitiveDetector(detName));
125 for (G4int icol = 0; icol < mfd->GetNumberOfPrimitives(); ++icol)
134 G4String collectionName = scorer->GetName();
135 G4String fullCollectionName = detName+
"/"+collectionName;
136 G4int collectionID = SDman->GetCollectionID(fullCollectionName);
138 if(collectionID >= 0)
140 G4cout <<
"++ "<<fullCollectionName<<
" id " << collectionID
146 fCollID.push_back(collectionID);
152 G4cout <<
"** collection " << fullCollectionName <<
" not found. "
181 for(std::size_t i = 0; i <
fCollID.size(); ++i)
192 G4cout <<
" Error EvtMap Not Found "<< i << G4endl;
219 for(std::size_t i = ncopies; i <
fRunMap.size(); ++i)
234 G4String fullName = detName+
"/"+colName;
247 for(std::size_t i = 0; i < Ncol; ++i)
255 G4Exception(
"Dicom2Run", fullName.c_str(), JustWarning,
256 "GetHitsVector failed to locate the requested HitsVector");
Definition of the Dicom2Run class.
Definition of the DicomDetectorConstruction class.
void Copy(std::vector< T > &main, const std::vector< T > &data)
Dicom2Run()
(Description) Dicom2Run Class is for accumulating scored quantities which is scored using G4MutiFunct...
virtual void RecordEvent(const G4Event *)
std::vector< G4int > fCollID
virtual void Merge(const G4Run *)
G4VTHitsVector< G4StatAnalysis, std::vector< G4StatAnalysis > > Dicom2RunVector
std::vector< G4String > fCollName
void ConstructMFD(const std::vector< G4String > &)
Dicom2RunVector * GetHitsVector(G4int i) const
std::vector< Dicom2RunVector * > fRunMap
virtual void RecordEvent(const G4Event *)
virtual void Merge(const G4Run *)
void ConstructMFD(const std::vector< G4String > &)