17#ifndef _RMG_DETECTOR_HIT_HH
18#define _RMG_DETECTOR_HIT_HH
21#include "G4THitsCollection.hh"
23#include "G4VPhysicalVolume.hh"
40class RMGDetectorHit :
public G4VHit {
44 RMGDetectorHit() =
default;
45 ~RMGDetectorHit() =
default;
47 RMGDetectorHit(
const RMGDetectorHit&) =
default;
49 RMGDetectorHit& operator=(RMGDetectorHit
const&) =
delete;
50 RMGDetectorHit(RMGDetectorHit&&) =
delete;
51 RMGDetectorHit& operator=(RMGDetectorHit&&) =
delete;
53 bool operator==(
const RMGDetectorHit&)
const;
55 inline void*
operator new(size_t);
56 inline void operator delete(
void*);
58 void Print()
override;
98inline void* RMGDetectorHit::operator
new(size_t) {
100 return (
void*)RMGDetectorHitAllocator->MallocSingle();
103inline void RMGDetectorHit::operator
delete(
void* hit) {
104 RMGDetectorHitAllocator->FreeSingle(
static_cast<RMGDetectorHit*
>(hit));
Class to store hits in the Germanium or Scintillator detectors, extends G4VHit.
Definition RMGDetectorHit.hh:40
double velocity_post
Velocity at the post-step point.
Definition RMGDetectorHit.hh:87
double velocity_pre
Velocity at the pre-step point.
Definition RMGDetectorHit.hh:86
int particle_type
PDG particle code for the track.
Definition RMGDetectorHit.hh:65
double energy_deposition
Energy deposited in this step (Geant4 energy units).
Definition RMGDetectorHit.hh:68
double distance_to_surface_poststep
Distance from the post-step point to the closest surface of the sensitive volume.
Definition RMGDetectorHit.hh:74
int track_id
Geant4 track id of the step.
Definition RMGDetectorHit.hh:81
double global_time
Global time at the pre-step point.
Definition RMGDetectorHit.hh:80
G4ThreeVector global_position_average
Step midpoint in world coordinates.
Definition RMGDetectorHit.hh:78
double distance_to_surface_average
Distance from the step-midpoint to the closest surface of the sensitive volume.
Definition RMGDetectorHit.hh:72
G4ThreeVector global_position_poststep
Step post-point in world coordinates.
Definition RMGDetectorHit.hh:76
G4VPhysicalVolume * physical_volume
Physical volume the step took place in.
Definition RMGDetectorHit.hh:84
int parent_track_id
Track id of the parent (0 for primaries).
Definition RMGDetectorHit.hh:82
int detector_uid
Remage detector unique identifier (uid) for the volume the hit took place in.
Definition RMGDetectorHit.hh:62
G4ThreeVector global_position_prestep
Step pre-point in world coordinates.
Definition RMGDetectorHit.hh:77
double distance_to_surface_prestep
Distance from the pre-step point to the closest surface of the sensitive volume.
Definition RMGDetectorHit.hh:70