Geant4  10.02.p01
Par02PrimaryParticleInformation.hh
Go to the documentation of this file.
1 //
2 // ********************************************************************
3 // * License and Disclaimer *
4 // * *
5 // * The Geant4 software is copyright of the Copyright Holders of *
6 // * the Geant4 Collaboration. It is provided under the terms and *
7 // * conditions of the Geant4 Software License, included in the file *
8 // * LICENSE and available at http://cern.ch/geant4/license . These *
9 // * include a list of copyright holders. *
10 // * *
11 // * Neither the authors of this software system, nor their employing *
12 // * institutes,nor the agencies providing financial support for this *
13 // * work make any representation or warranty, express or implied, *
14 // * regarding this software system or assume any liability for its *
15 // * use. Please see the license in the file LICENSE and URL above *
16 // * for the full disclaimer and the limitation of liability. *
17 // * *
18 // * This code implementation is the result of the scientific and *
19 // * technical work of the GEANT4 collaboration. *
20 // * By using, copying, modifying or distributing the software (or *
21 // * any work based on the software) you agree to acknowledge its *
22 // * use in resulting scientific publications, and indicate your *
23 // * acceptance of all terms of the Geant4 Software license. *
24 // ********************************************************************
25 //
26 // $Id: $
27 //
30 
31 #ifndef PAR02_PRIMARY_PARTICLE_INFORMATION_H
32 #define PAR02_PRIMARY_PARTICLE_INFORMATION_H
33 
35 #include "G4ThreeVector.hh"
36 #include "globals.hh"
37 
43 
45  public:
46 
52 
54 
56  virtual void Print() const;
57 
60  inline void SetMCMomentum( G4ThreeVector aMomentum ) { fMomentumMC = aMomentum; };
61 
63  inline G4ThreeVector GetMCMomentum() { return fMomentumMC; };
64 
67  inline void SetTrackerMomentum( G4ThreeVector aMomentum )
68  { fMomentumTracker = aMomentum; };
69 
72 
77  inline void SetTrackerResolution( G4double aResolution )
78  { fResolutionTracker = aResolution; };
79 
83 
87  inline void SetTrackerEfficiency( G4double aEfficiency )
88  { fEfficiencyTracker = aEfficiency; };
89 
93 
96  inline void SetEMCalPosition( G4ThreeVector aPosition )
97  { fPositionEMCal = aPosition; };
98 
101 
104  inline void SetEMCalEnergy( G4double aEnergy ) { fEnergyEMCal = aEnergy; };
105 
107  inline G4double GetEMCalEnergy() { return fEnergyEMCal; };
108 
113  inline void SetEMCalResolution( G4double aResolution )
114  { fResolutionEMCal = aResolution; };
115 
119 
123  inline void SetEMCalEfficiency( G4double aEfficiency )
124  { fEfficiencyEMCal = aEfficiency; };
125 
129 
132  inline void SetHCalPosition( G4ThreeVector aPosition )
133  { fPositionHCal = aPosition; };
134 
137 
140  inline void SetHCalEnergy( G4double aEnergy ) { fEnergyHCal = aEnergy; };
141 
143  inline G4double GetHCalEnergy() { return fEnergyHCal; };
144 
149  inline void SetHCalResolution( G4double aResolution )
150  { fResolutionHCal = aResolution; };
151 
155 
159  inline void SetHCalEfficiency( G4double aEfficiency )
160  { fEfficiencyHCal = aEfficiency; };
161 
165 
167  inline G4int GetPartID() const { return fPartID; };
168 
170  inline G4int GetPDG() const { return fPDG; };
171 
172  private:
173 
175  G4int fPartID;
176 
179 
182 
185 
188 
192 
195 
198 
201 
205 
208 
211 
214 
218 };
219 
220 #endif
221 
Par02PrimaryParticleInformation(G4int aID, G4int aPDG, G4ThreeVector aMomentum)
A constructor.
G4double GetHCalEnergy()
Sets the energy deposit in the hadronic calorimeter.
G4ThreeVector GetTrackerMomentum()
Gets the particle momentum at the entrance to the tracker detector.
CLHEP::Hep3Vector G4ThreeVector
void SetTrackerMomentum(G4ThreeVector aMomentum)
Sets the particle momentum at the entrance to the tracker detector.
void SetHCalResolution(G4double aResolution)
Sets the hadronic calorimeter resolution. Currently equal to -1 if AtlFast type of smearing is used...
G4ThreeVector GetEMCalPosition()
Gets the position of the energy deposit in the electromagnetic calorimeter.
G4ThreeVector fPositionEMCal
A position of the energy deposited in the electromagnetic calorimeter.
G4int GetPartID() const
Gets the particle unique ID (within event). Can be set only in the constructor.
int G4int
Definition: G4Types.hh:78
G4ThreeVector fMomentumMC
A particle initial momentum (from particle generator).
void SetEMCalEfficiency(G4double aEfficiency)
Sets the electromagnetic calorimeter efficiency. Currently not used (efficiency is 1)...
G4double GetEMCalEfficiency()
Gets the electromagnetic calorimeter efficiency. Currently not used (efficiency is 1)...
G4ThreeVector fMomentumTracker
A particle momentum at the entrance to the tracking detector.
G4double fResolutionEMCal
The resolution of the electromagnetic calorimeter.
void SetTrackerEfficiency(G4double aEfficiency)
Sets the tracking detector efficiency. Currently not used (efficiency is 1).
G4double fEfficiencyEMCal
The efficiency of the electromagnetic calorimeter. Currently not used (equal to 1).
virtual void Print() const
Prints the information about the particle.
G4ThreeVector GetHCalPosition()
Gets the position of the energy deposit in the hadronic calorimeter.
G4int GetPDG() const
Gets the standard PDG code. Can be set only in the constructor.
void SetMCMomentum(G4ThreeVector aMomentum)
Sets the initial particle momentum (from particle generator).
G4double GetHCalEfficiency()
Gets the hadronic calorimeter efficiency. Currently not used (efficiency is 1).
G4double fResolutionHCal
The resolution of the hadronic calorimeter.
void SetHCalEnergy(G4double aEnergy)
Sets the energy deposit in the hadronic calorimeter.
G4double fResolutionTracker
A resolution of the tracking detector.
G4double fEnergyEMCal
An energy deposited in the electromagnetic calorimeter.
G4ThreeVector fPositionHCal
A position of the energy deposited in the hadronic calorimeter.
G4double GetTrackerEfficiency()
Gets the tracker detector efficiency. Currently not used (efficiency is 1).
G4ThreeVector GetMCMomentum()
Gets the initial particle momentum (from particle generator).
void SetEMCalPosition(G4ThreeVector aPosition)
Sets the position of the energy deposit in the electromagnetic calorimeter.
G4double GetEMCalEnergy()
Sets the energy deposit in the electromagnetic calorimeter.
G4double fEfficiencyTracker
An efficiency of the tracking detector. Currently not used (equal to 1).
G4double GetEMCalResolution()
Gets the electromagnetic calorimeter resolution. Currently equal to -1 if AtlFast type of smearing is...
G4double GetTrackerResolution()
Gets the tracking detector resolution. Currently equal to -1 if AtlFast type of smearing is used...
G4double GetHCalResolution()
Gets the hadronic calorimeter resolution. Currently equal to -1 if AtlFast type of smearing is used...
double G4double
Definition: G4Types.hh:76
G4int fPDG
A particle type (PDG code).
void SetEMCalEnergy(G4double aEnergy)
Sets the energy deposit in the electromagnetic calorimeter.
G4double fEnergyHCal
An energy deposited in the hadronic calorimeter.
void SetHCalPosition(G4ThreeVector aPosition)
Sets the position of the energy deposit in the hadronic calorimeter.
void SetTrackerResolution(G4double aResolution)
Sets the tracker detector resolution. Currently equal to -1 if AtlFast type of smearing is used...
void SetEMCalResolution(G4double aResolution)
Sets the electromagnetic calorimeter resolution. Currently equal to -1 if AtlFast type of smearing is...
void SetHCalEfficiency(G4double aEfficiency)
Sets the hadronic calorimeter efficiency. Currently not used (efficiency is 1).
G4double fEfficiencyHCal
The efficiency of the hadronic calorimeter. Currently not used (equal to 1).