64 std::map<G4ITType, G4VITFinder*>::iterator it;
65 std::map<G4ITType, G4VITFinder*>::iterator it_tmp;
67 for (it = fITSubManager.begin(); it != fITSubManager.end();)
69 if (it->second)
delete it->second;
72 fITSubManager.erase(it_tmp);
79 std::map<G4ITType, G4VITFinder*>::iterator it = fITSubManager.begin();
81 for (; it != fITSubManager.end(); it++)
83 it->second->UpdatePositionMap();
89 map<G4ITType, G4VITFinder*>::iterator it = fITSubManager.find(type);
91 if (it == fITSubManager.end())
return 0;
98 fITSubManager[manager->
GetITType()] = manager;
Tag the G4IT Should be automatically setup by G4IT using : ITDef(MyIT) and ITImp(MyIT) ...
static G4ThreadLocal G4AllITFinder * fpInstance
G4IT * GetIT(const G4Track *track)
Holds all IT Manager, and take care of deleting them when AllITManager is deleted Set general verbose...
static void DeleteInstance()
static G4AllITFinder * Instance()
virtual const G4ITType GetITType() const =0
~G4AllITFinder()
To delete the Instance you should use DeleteInstance() rather than the destructor.
G4VITFinder * GetInstance(G4ITType)
void RegisterManager(G4VITFinder *manager)
void Push(G4Track *track)
virtual G4ITType GetITType()=0