#include <OpDetSensitiveDetector.h>
|
void | AddPhoton (G4Step const *aStep, int OpDet) |
| Adds the photon at the specified step with full information. More...
|
|
void | AddLitePhoton (G4Step const *aStep, int OpDet) |
| Adds the photon at the specified step with reduced information. More...
|
|
Definition at line 36 of file OpDetSensitiveDetector.h.
larg4::OpDetSensitiveDetector::OpDetSensitiveDetector |
( |
G4String |
name, |
|
|
bool |
useLitePhotons = false |
|
) |
| |
Definition at line 28 of file OpDetSensitiveDetector.cxx.
30 : G4VSensitiveDetector(DetectorUniqueName),
fUseLitePhotons(useLitePhotons)
33 G4SDManager::GetSDMpointer()->AddNewDetector(
this);
bool const fUseLitePhotons
Fill simplified lite photons instead of full information photons.
static OpDetLookup * Instance()
static OpDetPhotonTable * Instance(bool LitePhotons=false)
OpDetLookup * fTheOpDetLookup
OpDetPhotonTable * fThePhotonTable
virtual larg4::OpDetSensitiveDetector::~OpDetSensitiveDetector |
( |
| ) |
|
|
inlinevirtual |
void larg4::OpDetSensitiveDetector::AddLitePhoton |
( |
G4Step const * |
aStep, |
|
|
int |
OpDet |
|
) |
| |
|
private |
Adds the photon at the specified step with reduced information.
Definition at line 43 of file OpDetSensitiveDetector.cxx.
46 double const time = aStep->GetTrack()->GetGlobalTime();
49 double const energy = aStep->GetTrack()->GetVertexKineticEnergy() /
CLHEP::eV;
50 bool const reflected = Wavelength(energy) > 200.0;
static constexpr double eV
void AddLitePhoton(int opchannel, int time, int nphotons, bool Reflected=false)
OpDetPhotonTable * fThePhotonTable
void larg4::OpDetSensitiveDetector::AddPhoton |
( |
G4Step const * |
aStep, |
|
|
int |
OpDet |
|
) |
| |
|
private |
Adds the photon at the specified step with full information.
Definition at line 60 of file OpDetSensitiveDetector.cxx.
68 auto const& track = *(aStep->GetTrack());
69 auto const& startPos = track.GetVertexPosition();
73 ThePhoton.
Time = track.GetGlobalTime();
75 ThePhoton.
Energy = track.GetVertexKineticEnergy();
78 G4StepPoint
const* preStepPoint = aStep->GetPreStepPoint();
81 G4ThreeVector worldPosition = preStepPoint->GetPosition();
82 G4ThreeVector localPosition =
83 preStepPoint->GetTouchableHandle()->GetHistory()->GetTopTransform().TransformPoint(
static constexpr double cm
All information of a photon entering the sensitive optical detector volume.
geo::Point_t InitialPosition
Scintillation position in world coordinates [cm].
void AddPhoton(size_t opchannel, sim::OnePhoton &&photon, bool Reflected=false)
OpDetPhotonTable * fThePhotonTable
bool SetInSD
Whether the photon reaches the sensitive detector.
geo::OpticalPoint_t FinalLocalPosition
Where photon enters the optical detector in local coordinates [cm].
float Energy
Scintillation photon energy [GeV].
virtual void larg4::OpDetSensitiveDetector::clear |
( |
| ) |
|
|
inlinevirtual |
virtual void larg4::OpDetSensitiveDetector::DrawAll |
( |
| ) |
|
|
inlinevirtual |
virtual void larg4::OpDetSensitiveDetector::EndOfEvent |
( |
G4HCofThisEvent * |
| ) |
|
|
inlinevirtual |
void larg4::OpDetSensitiveDetector::Initialize |
( |
G4HCofThisEvent * |
| ) |
|
|
virtual |
virtual void larg4::OpDetSensitiveDetector::PrintAll |
( |
| ) |
|
|
inlinevirtual |
G4bool larg4::OpDetSensitiveDetector::ProcessHits |
( |
G4Step * |
aStep, |
|
|
G4TouchableHistory * |
|
|
) |
| |
|
virtual |
Definition at line 96 of file OpDetSensitiveDetector.cxx.
108 aStep->GetTrack()->SetTrackStatus(fStopAndKill);
bool const fUseLitePhotons
Fill simplified lite photons instead of full information photons.
void AddLitePhoton(G4Step const *aStep, int OpDet)
Adds the photon at the specified step with reduced information.
void AddPhoton(G4Step const *aStep, int OpDet)
Adds the photon at the specified step with full information.
int GetOpDet(G4VPhysicalVolume *)
OpDetLookup * fTheOpDetLookup
OpDetLookup* larg4::OpDetSensitiveDetector::fTheOpDetLookup |
|
private |
bool const larg4::OpDetSensitiveDetector::fUseLitePhotons |
|
private |
The documentation for this class was generated from the following files: