34 #define INCLXX_IN_GEANT4_MODE 1 
   51   void CascadeAction::beforeRunAction(
Config const *
config) {
 
   52     beforeRunDefaultAction(config);
 
   56   void CascadeAction::beforeCascadeAction(IPropagationModel *pm) {
 
   57     beforeCascadeDefaultAction(pm);
 
   61   void CascadeAction::beforePropagationAction(IPropagationModel *pm) {
 
   62     beforePropagationDefaultAction(pm);
 
   66   void CascadeAction::beforeAvatarAction(IAvatar *
a, Nucleus *
n) {
 
   67     beforeAvatarDefaultAction(a, n);
 
   71   void CascadeAction::afterAvatarAction(IAvatar *
a, Nucleus *
n, FinalState *fs) {
 
   72     afterAvatarDefaultAction(a, n, fs);
 
   76   void CascadeAction::afterPropagationAction(IPropagationModel *pm, IAvatar *avatar) {
 
   77     afterPropagationDefaultAction(pm, avatar);
 
   81   void CascadeAction::afterCascadeAction(Nucleus *
n) {
 
   82     afterCascadeDefaultAction(n);
 
   86   void CascadeAction::afterRunAction() {
 
   87     afterRunDefaultAction();
 
   93   void CascadeAction::beforeRunDefaultAction(Config 
const * ) {}
 
   95   void CascadeAction::beforeCascadeDefaultAction(IPropagationModel * ) {}
 
   97   void CascadeAction::beforePropagationDefaultAction(IPropagationModel * ) {
 
  101   void CascadeAction::beforeAvatarDefaultAction(IAvatar *
a, Nucleus *
n) {
 
  102     n->getStore()->getBook().incrementAvatars(a->getType());
 
  103     INCL_DEBUG(
"Random seeds before avatar " << a->getID() << 
": " 
  105     INCL_DEBUG(
"Next avatar:" << 
'\n' << a->dump() << 
'\n');
 
  108   void CascadeAction::afterAvatarDefaultAction(IAvatar *a, Nucleus * , FinalState *fs) {
 
  113     INCL_DEBUG(
"Random seeds after avatar " << a->getID() << 
": " 
  116     ParticleList 
const &modified = fs->getModifiedParticles();
 
  118       if(a->isACollision())
 
  119         (*p)->incrementNumberOfCollisions();
 
  120       else if(a->isADecay())
 
  121         (*p)->incrementNumberOfDecays();
 
  123     ParticleList 
const &created = fs->getCreatedParticles();
 
  125       if(a->isACollision())
 
  126         (*p)->incrementNumberOfCollisions();
 
  127       else if(a->isADecay())
 
  128         (*p)->incrementNumberOfDecays();
 
  132   void CascadeAction::afterPropagationDefaultAction(IPropagationModel * ,
 
  136 #ifdef INCL_DEBUG_LOG 
  141   void CascadeAction::afterCascadeDefaultAction(Nucleus * ) {}
 
  143   void CascadeAction::afterRunDefaultAction() {}
 
virtual void beforeAvatarUserAction(IAvatar *, Nucleus *)
 
std::vector< ExP01TrackerHit * > a
 
Class containing default actions to be performed at intermediate cascade steps. 
 
virtual void beforeCascadeUserAction(IPropagationModel *)
 
virtual void afterRunUserAction()
 
virtual void afterPropagationUserAction(IPropagationModel *, IAvatar *)
 
virtual void afterAvatarUserAction(IAvatar *, Nucleus *, FinalState *)
 
virtual void beforePropagationUserAction(IPropagationModel *)
 
virtual void beforeRunUserAction(Config const *)
 
virtual void afterCascadeUserAction(Nucleus *)
 
ParticleList::const_iterator ParticleIter