ATLAS Offline Software
LUCID_HitHelper.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef LUCID_HITIDHELPER
6 #define LUCID_HITIDHELPER 1
7 
8 // Athena includes
10 
11 // Geant4 includes
12 #include "globals.hh"
13 #include "G4Step.hh"
14 #include "G4TouchableHistory.hh"
15 #include "G4VTouchable.hh"
16 
17 // CLHEP includes
18 #include "CLHEP/Units/PhysicalConstants.h"
19 #include "CLHEP/Units/SystemOfUnits.h"
20 
21 // STL includes
22 #include <cmath>
23 
25 
26  public:
27 
30 
31  inline G4ThreeVector GetPreStepPoint (G4Step* aStep) const { return aStep->GetPreStepPoint()->GetPosition(); }
32  inline G4ThreeVector GetPostStepPoint(G4Step* aStep) const { return aStep->GetPostStepPoint()->GetPosition(); }
33  inline float GetPreStepTime (G4Step* aStep) const { return aStep->GetPreStepPoint()->GetGlobalTime(); }
34  inline float GetPostStepTime (G4Step* aStep) const { return aStep->GetPostStepPoint()->GetGlobalTime(); }
35 
36  inline double GetWaveLength(double energy) const { return 2.*M_PI*CLHEP::hbarc/(CLHEP::eV*CLHEP::nm)/energy; }
37  inline double GetEnergy (double lambda) const { return 2.*M_PI*CLHEP::hbarc/(CLHEP::eV*CLHEP::nm)/lambda; }
38 
39  static int GetVolNumber(const G4String&) ;
40  int GetTubNumber(G4Step* ) const;
41 };
42 
43 #endif
LUCID_HitHelper::GetVolNumber
static int GetVolNumber(const G4String &)
Definition: LUCID_HitHelper.cxx:9
LUCID_HitHelper::~LUCID_HitHelper
~LUCID_HitHelper()
Definition: LUCID_HitHelper.h:29
LUCID_HitHelper::GetEnergy
double GetEnergy(double lambda) const
Definition: LUCID_HitHelper.h:37
M_PI
#define M_PI
Definition: ActiveFraction.h:11
LUCID_HitHelper::GetPreStepPoint
G4ThreeVector GetPreStepPoint(G4Step *aStep) const
Definition: LUCID_HitHelper.h:31
LUCID_HitHelper::GetPostStepPoint
G4ThreeVector GetPostStepPoint(G4Step *aStep) const
Definition: LUCID_HitHelper.h:32
LUCID_HitHelper::GetPostStepTime
float GetPostStepTime(G4Step *aStep) const
Definition: LUCID_HitHelper.h:34
ParticleGun_FastCalo_ChargeFlip_Config.energy
energy
Definition: ParticleGun_FastCalo_ChargeFlip_Config.py:78
python.PhysicalConstants.hbarc
float hbarc
Definition: PhysicalConstants.py:73
LUCID_HitHelper::GetPreStepTime
float GetPreStepTime(G4Step *aStep) const
Definition: LUCID_HitHelper.h:33
LUCID_HitHelper::LUCID_HitHelper
LUCID_HitHelper()
Definition: LUCID_HitHelper.h:28
python.SystemOfUnits.eV
int eV
Definition: SystemOfUnits.py:155
HitIdHelper
Definition: HitIdHelper.h:23
LUCID_HitHelper::GetWaveLength
double GetWaveLength(double energy) const
Definition: LUCID_HitHelper.h:36
CalibCoolCompareRT.nm
nm
Definition: CalibCoolCompareRT.py:110
HitIdHelper.h
LUCID_HitHelper::GetTubNumber
int GetTubNumber(G4Step *) const
Definition: LUCID_HitHelper.cxx:20
LUCID_HitHelper
Definition: LUCID_HitHelper.h:24