Warning, file /include/Geant4/G4VRestContinuousProcess.hh was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027
0028
0029
0030
0031
0032
0033
0034
0035
0036
0037 #ifndef G4VRestContinuousProcess_hh
0038 #define G4VRestContinuousProcess_hh 1
0039
0040 #include "globals.hh"
0041 #include "G4ios.hh"
0042
0043 #include "G4VProcess.hh"
0044
0045 class G4VRestContinuousProcess : public G4VProcess
0046 {
0047 public:
0048
0049 G4VRestContinuousProcess(const G4String& ,
0050 G4ProcessType aType = fNotDefined);
0051 G4VRestContinuousProcess(G4VRestContinuousProcess &);
0052
0053 virtual ~G4VRestContinuousProcess();
0054
0055 G4VRestContinuousProcess& operator=(const G4VRestContinuousProcess&) = delete;
0056
0057 virtual G4double AtRestGetPhysicalInteractionLength(
0058 const G4Track& ,
0059 G4ForceCondition*
0060 );
0061
0062 virtual G4VParticleChange* AtRestDoIt(
0063 const G4Track& ,
0064 const G4Step&
0065 );
0066
0067 virtual G4double AlongStepGetPhysicalInteractionLength(
0068 const G4Track& track,
0069 G4double previousStepSize,
0070 G4double currentMinimumStep,
0071 G4double& currentSafety,
0072 G4GPILSelection* selection
0073 );
0074
0075 virtual G4VParticleChange* AlongStepDoIt(
0076 const G4Track& ,
0077 const G4Step&
0078 );
0079
0080 virtual G4double PostStepGetPhysicalInteractionLength(
0081 const G4Track& ,
0082 G4double ,
0083 G4ForceCondition*
0084 ) { return -1.0; }
0085
0086
0087 virtual G4VParticleChange* PostStepDoIt(
0088 const G4Track& ,
0089 const G4Step&
0090 ) { return 0; }
0091
0092
0093 protected:
0094
0095 virtual G4double GetContinuousStepLimit(const G4Track& aTrack,
0096 G4double previousStepSize,
0097 G4double currentMinimumStep,
0098 G4double& currentSafety) = 0;
0099
0100
0101
0102 virtual G4double GetMeanLifeTime(const G4Track& aTrack,
0103 G4ForceCondition* condition) = 0;
0104
0105
0106
0107
0108
0109 inline void SetGPILSelection(G4GPILSelection selection)
0110 { valueGPILSelection = selection; }
0111
0112 inline G4GPILSelection GetGPILSelection() const
0113 { return valueGPILSelection; }
0114
0115
0116 private:
0117
0118 G4VRestContinuousProcess();
0119
0120
0121 G4GPILSelection valueGPILSelection = CandidateForSelection;
0122
0123
0124 };
0125
0126 #endif