ATLAS Offline Software
Loading...
Searching...
No Matches
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
#define M_PI
int GetTubNumber(G4Step *) const
float GetPostStepTime(G4Step *aStep) const
static int GetVolNumber(const G4String &)
float GetPreStepTime(G4Step *aStep) const
double GetEnergy(double lambda) const
G4ThreeVector GetPostStepPoint(G4Step *aStep) const
G4ThreeVector GetPreStepPoint(G4Step *aStep) const
double GetWaveLength(double energy) const