44 #ifndef CEXMC_PHYSICS_LIST_HH 
   45 #define CEXMC_PHYSICS_LIST_HH 
   60 template  < 
typename  BasePhysics, 
template  < 
typename > 
class  StudiedPhysics,
 
   61             typename  ProductionModel >
 
   89 template  < 
typename  BasePhysics, 
template  < 
typename > 
class  StudiedPhysics,
 
   90             typename  ProductionModel >
 
   99 template  < 
typename  BasePhysics, 
template  < 
typename > 
class  StudiedPhysics,
 
  100             typename  ProductionModel >
 
  105     return studiedPhysics->GetProductionModel();
 
  109 template  < 
typename  BasePhysics, 
template  < 
typename > 
class  StudiedPhysics,
 
  110             typename  ProductionModel >
 
  114     return numberOfTriggeredStudiedInteractions == 0;
 
  118 template  < 
typename  BasePhysics, 
template  < 
typename > 
class  StudiedPhysics,
 
  119             typename  ProductionModel >
 
  130                 static_cast< CexmcIncidentParticleTrackInfo * >(
 
  141         position = targetTransform.TransformPoint( stepPoint->
GetPosition() );
 
  142         direction = targetTransform.TransformAxis(
 
  147         position = targetTransform.TransformPoint( track->
GetPosition() );
 
  148         direction = targetTransform.TransformAxis(
 
  152     G4double  distanceInTarget( targetSolid->DistanceToOut( position,
 
  156                                 std::max( distanceInTarget, proposedMaxIL ) );
 
  161 template  < 
typename  BasePhysics, 
template  < 
typename > 
class  StudiedPhysics,
 
  162             typename  ProductionModel >
 
  169                             targetTransform.TransformAxis( direction ) ) * 2;
 
  173 template  < 
typename  BasePhysics, 
template  < 
typename > 
class  StudiedPhysics,
 
  174             typename  ProductionModel >
 
void SetFinalTrackLengthInTarget(G4double value)
 
void SetNeedsTrackLengthResampling(G4bool on=true)
 
void ResetCurrentTrackLengthInTarget(void)
 
CLHEP::Hep3Vector G4ThreeVector
 
const G4ThreeVector & GetPosition() const 
 
CexmcProductionModel * GetProductionModel(void)
 
void ResampleTrackLengthInTarget(const G4Track *track, const G4StepPoint *stepPoint)
 
G4VUserTrackInformation * GetUserInformation() const 
 
const G4LogicalVolume * GetVolume(SpecialVolumeType volume) const 
 
void CalculateBasicMaxIL(const G4ThreeVector &direction)
 
const G4ThreeVector & GetMomentumDirection() const 
 
const G4ThreeVector & GetPosition() const 
 
G4bool IsStudiedProcessAllowed(void) const 
 
G4AffineTransform targetTransform
 
const G4ThreeVector & GetMomentumDirection() const 
 
T max(const T t1, const T t2)
brief Return the largest of the two arguments 
 
const G4AffineTransform & GetTargetTransform(void) const 
 
void SetupConstructionHook(const CexmcSetup *setup)
 
G4VSolid * GetSolid() const 
 
StudiedPhysics< ProductionModel > * studiedPhysics