51   mapModels::iterator it;
 
   62   mapModels::const_iterator it = right.
fModels.begin();
 
   64   for (; it != right.
fModels.end(); it++)
 
   66     fModels[it->first] = it->second->Clone();
 
   74   if (
this == &rhs) 
return *
this; 
 
   81   mapModels::iterator it = 
fModels.begin();
 
   83   for (; it != 
fModels.end(); it++)
 
  100         << 
"You are trying to insert a new model after initialization of th model manager.";
 
  101     G4Exception(
"G4ITModelManager::SetModel", 
"ITModelManager001",
 
  104   fModels[startingTime] = aModel;
 
  111     mapModels::reverse_iterator rit = 
fModels.rbegin();
 
  114       if (globalTime > rit->first)
 
  120         mapModels::iterator it = 
fModels.begin();
 
  122         if (globalTime < it->first)
 
  125           exceptionDescription << 
"No model was found at time ";
 
  126           exceptionDescription << 
G4BestUnit(globalTime, 
"Time");
 
  127           exceptionDescription << 
". The first model is registered at time : ";
 
  128           exceptionDescription << 
G4BestUnit(it->first, 
"Time") << 
". ";
 
  129           G4Exception(
"G4ITModelManager::GetModel", 
"ITModelManager003",
 
  133         it = 
fModels.lower_bound(globalTime);
 
  135         if (it != 
fModels.end()) 
return it->second;
 
  141   exceptionDescription << 
"No model was found.";
 
  142   G4Exception(
"G4ITModelManager::GetModel", 
"ITModelManager004",
 
virtual void Initialize()
 
std::ostringstream G4ExceptionDescription
 
void SetModel(G4VITStepModel *aModel, G4double startingTime)
 
Define what to do before stepping and after stepping. 
 
#define G4BestUnit(a, b)
#define G4_USE_G4BESTUNIT_FOR_VERBOSE 1 
 
G4ITModelManager & operator=(const G4ITModelManager &rhs)
 
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
 
G4VITStepModel * GetModel(const G4double globalTime)
 
G4ITModelManager chooses which model to use according to the global simulation time.