39 #ifndef G4ITMODELPROCESSOR_H
40 #define G4ITMODELPROCESSOR_H
91 void FindReaction(std::map<G4Track*, G4TrackVectorHandle>*,
92 const double currentStepTime,
93 const double previousStepTime,
94 const bool reachedUserStepTimeLimit) ;
167 exceptionDescription <<
"You are trying to set a new model while the model processor has alreaday be initialized";
168 G4Exception(
"G4ITModelProcessor::SetModelHandler",
"ITModelProcessor001",
178 #endif // G4ITMODELPROCESSOR_H
G4ITModelHandler holds for two IT types the corresponding model manager.
Before stepping all tracks G4ITStepManager calls all the G4VITModel which may contain a G4VITTimeStep...
static G4ThreadLocal std::map< const G4Track *, G4bool > * fHasReacted
The G4ITModelProcessor will call the two processes defined in G4VITModel.
std::ostringstream G4ExceptionDescription
void SetTrack(const G4Track *)
std::vector< G4ITReactionChange * > fReactionInfo
const std::vector< std::vector< G4VITModel * > > * GetCurrentModel()
void CalculateTimeStep(const G4Track *, const G4double)
G4VITReactionProcess defines the reaction between two G4IT.
Tag the G4IT Should be automatically setup by G4IT using : ITDef(MyIT) and ITImp(MyIT) ...
Define what to do before stepping and after stepping.
G4double fUserMinTimeStep
G4ReferenceCountedHandle< std::vector< G4Track * > > G4TrackVectorHandle
virtual ~G4ITModelProcessor()
const G4Track * GetTrack() const
std::vector< G4ITReactionChange * > * GetReactionInfo()
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
G4ITModelProcessor & operator=(const G4ITModelProcessor &other)
Assignment operator.
G4ITModelManager * fpModelManager
void FindReaction(std::map< G4Track *, G4TrackVectorHandle > *, const double currentStepTime, const double previousStepTime, const bool reachedUserStepTimeLimit)
void InitializeStepper(const G4double ¤tGlobalTime, const G4double &userMinTime)
void SetModelHandler(G4ITModelHandler *)
std::vector< std::vector< G4VITModel * > > fCurrentModel
G4ITModelHandler * fpModelHandler
G4ITModelManager chooses which model to use according to the global simulation time.
void CleanProcessor()
Restaure original state of the modelProcessor.