Warning, file /include/Geant4/G4CollisionNN.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 #ifndef G4CollisionNN_h
0029 #define G4CollisionNN_h
0030
0031 #include "globals.hh"
0032 #include "G4GeneralNNCollision.hh"
0033 #include "G4CollisionVector.hh"
0034 #include "G4VCrossSectionSource.hh"
0035 #include <vector>
0036
0037 class G4KineticTrack;
0038
0039 class G4CollisionNN : public G4GeneralNNCollision
0040 {
0041
0042 public:
0043
0044 G4CollisionNN();
0045
0046 virtual ~G4CollisionNN();
0047
0048 G4bool operator==(const G4CollisionNN &right) const;
0049 G4bool operator!=(const G4CollisionNN &right) const;
0050
0051 virtual G4String GetName() const { return "NN CollisionComposite"; }
0052
0053 virtual G4double CrossSection(const G4KineticTrack& trk1,
0054 const G4KineticTrack& trk2) const;
0055
0056 private:
0057 G4CollisionNN(const G4CollisionNN &);
0058 G4CollisionNN & operator= (const G4CollisionNN &);
0059
0060
0061 protected:
0062
0063 virtual const G4VCrossSectionSource* GetCrossSectionSource() const { return crossSectionSource; }
0064 virtual const G4VAngularDistribution* GetAngularDistribution() const { return 0; }
0065
0066 virtual const G4CollisionVector* GetComponents() const { return components; }
0067
0068 virtual const std::vector<G4String>& GetListOfColliders(G4int whichOne) const;
0069
0070 private:
0071
0072 G4CollisionVector* components;
0073
0074 G4VCrossSectionSource* crossSectionSource;
0075
0076 std::vector<G4String> colliders1;
0077 std::vector<G4String> colliders2;
0078 };
0079
0080 #endif