34 #define INCLXX_IN_GEANT4_MODE 1 
   49 #ifndef G4INCLINTERACTIONAVATAR_HH_ 
   50 #define G4INCLINTERACTIONAVATAR_HH_ 
  115       class ViolationEMomentumFunctor : 
public RootFunctor {
 
  122           virtual ~ViolationEMomentumFunctor();
 
  132           void cleanUp(
const G4bool success) 
const;
 
  138           std::vector<ThreeVector> particleMomenta;
 
  162       class ViolationEEnergyFunctor : 
public RootFunctor {
 
  168           ViolationEEnergyFunctor(
Nucleus * 
const nucleus, 
Particle * 
const aParticle, 
const G4double totalEnergyBeforeInteraction, 
const G4bool localE);
 
  169           virtual ~ViolationEEnergyFunctor() {}
 
  179           void cleanUp(
const G4bool success) 
const;
 
  193           Particle *theParticle;
 
  197           ThreeVector theMomentum;
 
  207       RootFunctor *violationEFunctor;
 
#define INCL_DECLARE_ALLOCATION_POOL(T)
 
static const G4double locEAccuracy
Target accuracy in the determination of the local-energy Q-value. 
 
void preInteractionLocalEnergy(Particle *const p)
Apply local-energy transformation, if appropriate. 
 
G4bool shouldUseLocalEnergy() const 
true if the given avatar should use local energy 
 
static const G4int maxIterLocE
Max number of iterations for the determination of the local-energy Q-value. 
 
void postInteraction(FinalState *)
 
virtual G4INCL::IChannel * getChannel()=0
 
Singleton for recycling allocation of instances of a given class. 
 
static G4ThreadLocal Particle * backupParticle2
 
InteractionAvatar(G4double, G4INCL::Nucleus *, G4INCL::Particle *)
 
static void deleteBackupParticles()
Release the memory allocated for the backup particles. 
 
ParticleList modifiedAndCreated
 
void preInteractionBlocking()
Store the state of the particles before the interaction. 
 
static G4ThreadLocal Particle * backupParticle1
 
G4double energy(const ThreeVector &p, const G4double m)
 
G4bool enforceEnergyConservation(FinalState *const fs)
Enforce energy conservation. 
 
void restoreParticles() const 
Restore the state of both particles. 
 
G4bool bringParticleInside(Particle *const p)
 
virtual ~InteractionAvatar()
 
static const G4double alpha
 
Static root-finder algorithm.