65 theMessenger =
nullptr;
75 if( pathName(0) !=
'/' ) pathName.
prepend(
"/");
76 if( pathName(pathName.length()-1) !=
'/' ) pathName +=
"/";
78 if(numberOfCollections<1)
return;
79 for(
G4int i=0;i<numberOfCollections;i++)
85 if( verboseLevel > 0 )
88 <<
"> is registered at " << pathName <<
G4endl;
98 if(verboseLevel>1)
G4cout <<
"G4SDManager::AddNewCollection : the collection <"
99 << SDname <<
"/" << DCname <<
"> has already been reginstered." <<
G4endl;
103 G4cout <<
"G4SDManager::AddNewCollection : the collection <"
104 << SDname <<
"/" << DCname <<
"> is registered at " << i <<
G4endl;
124 if( pathName(0) !=
'/' ) pathName.
prepend(
"/");
125 treeTop->
Activate(pathName,activeFlag);
131 if( pathName(0) !=
'/' ) pathName.
prepend(
"/");
139 {
G4cout <<
"<" << colName <<
"> is not found." <<
G4endl; }
141 {
G4cout <<
"<" << colName <<
"> is ambiguous." <<
G4endl; }
155 FilterList.push_back(filter);
160 for(
auto f = FilterList.begin(); f != FilterList.end(); f++)
170void G4SDManager::DestroyFilters()
172 auto f = FilterList.begin();
173 while( f != FilterList.end() )
175 if(verboseLevel>0)
G4cout <<
"### deleting " << (*f)->GetName() <<
" " << (*f) <<
G4endl;
177 f = FilterList.begin();
G4GLOB_DLL std::ostream G4cout
G4int Registor(G4String SDname, G4String HCname)
G4int GetCollectionID(G4String HCname) const
void RegisterSDFilter(G4VSDFilter *filter)
static G4SDManager * GetSDMpointer()
void TerminateCurrentEvent(G4HCofThisEvent *HCE)
G4HCofThisEvent * PrepareNewEvent()
void Activate(G4String dName, G4bool activeFlag)
void AddNewDetector(G4VSensitiveDetector *aSD)
void DeRegisterSDFilter(G4VSDFilter *filter)
G4int GetCollectionID(G4String colName)
G4VSensitiveDetector * FindSensitiveDetector(G4String dName, G4bool warning=true)
static G4SDManager * GetSDMpointerIfExist()
void AddNewCollection(G4String SDname, G4String DCname)
void Initialize(G4HCofThisEvent *HCE)
void Activate(const G4String &aName, G4bool sensitiveFlag)
void Terminate(G4HCofThisEvent *HCE)
G4VSensitiveDetector * FindSensitiveDetector(const G4String &aName, G4bool warning=true)
void AddNewDetector(G4VSensitiveDetector *aSD, const G4String &treeStructure)
G4String & prepend(const char *)
const G4String & GetSDname() const
const G4String & GetName() const
G4int GetNumberOfCollections() const
G4String GetCollectionName(G4int id) const
G4String GetPathName() const