WCSim
Classes | Public Member Functions | Private Attributes | Static Private Attributes | List of all members
WCSimWCDigi Class Reference

#include <WCSimWCDigi.hh>

Inheritance diagram for WCSimWCDigi:
Inheritance graph
Collaboration diagram for WCSimWCDigi:
Collaboration graph

Classes

struct  SortFunctor_Hit
 

Public Member Functions

 WCSimWCDigi ()
 
 ~WCSimWCDigi ()
 
 WCSimWCDigi (const WCSimWCDigi &)
 
const WCSimWCDigioperator= (const WCSimWCDigi &)
 
int operator== (const WCSimWCDigi &) const
 
void * operator new (size_t)
 
void operator delete (void *)
 
void Draw ()
 
void Print ()
 
void RemoveDigitizedGate (G4int gate)
 
void SetTubeID (G4int tube)
 
void SetTubeType (G4String tube_type)
 
void AddGate (int g, double t)
 
void SetPe (G4int gate, G4double Q)
 
void SetTime (G4int gate, G4double T)
 
void SetPreSmearTime (G4int gate, G4double T)
 
void SetTrackID (G4int gate, G4int track)
 
void SetParentID (G4int gate, G4int parent)
 
void SetPhotonStartTime (G4int gate, G4float starttime)
 
void SetPhotonStartPos (G4int gate, const G4ThreeVector &position)
 
void SetPhotonEndPos (G4int gate, const G4ThreeVector &position)
 
void SetPhotonStartDir (G4int gate, const G4ThreeVector &direction)
 
void SetPhotonEndDir (G4int gate, const G4ThreeVector &direction)
 
void SetPhotonCreatorProcess (G4int gate, ProcessType_t creatorProcess)
 
void AddPhotonToDigiComposition (int digi_number, int photon_number)
 
void AddDigiCompositionInfo (std::vector< int > &digi_comp)
 
G4int GetTrackID (int gate)
 
G4int GetParentID (int gate)
 
G4float GetPhotonStartTime (int gate)
 
G4ThreeVector GetPhotonStartPos (int gate)
 
G4ThreeVector GetPhotonEndPos (int gate)
 
G4ThreeVector GetPhotonStartDir (int gate)
 
G4ThreeVector GetPhotonEndDir (int gate)
 
ProcessType_t GetPhotonCreatorProcess (int gate)
 
G4double GetGateTime (int gate)
 
G4int GetTubeID ()
 
G4String GetTubeType ()
 
G4ThreeVector GetPos ()
 
G4ThreeVector GetOrientation ()
 
G4RotationMatrix GetRot ()
 
G4double GetPe (int gate)
 
G4double GetTime (int gate)
 
std::map< int, double >::const_iterator GetTimeMapBegin ()
 
std::map< int, double >::const_iterator GetTimeMapEnd ()
 
G4double GetPreSmearTime (int gate)
 
std::vector< int > GetDigiCompositionInfo (int gate)
 
std::map< int, std::vector< int > > GetDigiCompositionInfo ()
 
int NumberOfGates ()
 
int NumberOfSubEvents ()
 
bool HasHitsInGate (int number)
 
G4LogicalVolumeGetLogicalVolume ()
 
void SetEdep (G4double de)
 
void SetPos (G4ThreeVector xyz)
 
void SetOrientation (G4ThreeVector xyz)
 
void SetLogicalVolume (G4LogicalVolume *logV)
 
void SetRot (G4RotationMatrix rotMatrix)
 
G4int GetTotalPe ()
 
void SetMaxPe (G4int number=0)
 
void AddPe (G4double hitTime)
 
void SortHitTimes ()
 
void SortDigiMapsByHitTime ()
 
void insertionSort (int a[], int array_size)
 
G4double GetFirstHitTimeInGate (G4double low, G4double upevent)
 

Private Attributes

G4int tubeID
 
G4RotationMatrix rot
 
G4ThreeVector pos
 
G4ThreeVector orient
 
G4LogicalVolumepLogV
 
G4String tubeType
 
std::set< int > Gates
 
std::vector< double > TriggerTimes
 
std::map< int, double > pe
 Charge of each Digi. More...
 
std::map< int, double > time_presmear
 Time of each Digi, before smearing. More...
 
std::map< int, double > time
 Time of each Digi. More...
 
std::vector< G4doubletime_double
 Same information as "time" but stored in a vector for quick time sorting. More...
 
std::map< int, std::vector< int > > fDigiComp
 IDs of the hits that make up this Digit (do not use for Hits) More...
 
std::map< int, G4inttrackID
 TrackID of the photon of the Hit (do not use for Digits) More...
 
std::map< int, G4intparentSavedTrackID
 Primary parent ID of the Hit (do not use for Digits) More...
 
std::map< int, G4float > photonStartTime
 Primary parent ID of the Hit (do not use for Digits) More...
 
std::map< int, G4ThreeVectorphotonStartPos
 Start point of the photon of the Hit (do not use for Digits) More...
 
std::map< int, G4ThreeVectorphotonEndPos
 End point of the photon of the Hit (do not use for Digits) More...
 
std::map< int, G4ThreeVectorphotonStartDir
 Start dir of the photon of the Hit (do not use for Digits) More...
 
std::map< int, G4ThreeVectorphotonEndDir
 End dir of the photon of the Hit (do not use for Digits) More...
 
std::map< int, ProcessType_tphotonCreatorProcess
 Process which created the photon of the Hit (Diego Costas) More...
 
G4int totalPe
 
G4int totalPeInGate
 
G4double edep
 

Static Private Attributes

static G4int maxPe
 

Detailed Description

Definition at line 22 of file WCSimWCDigi.hh.

Constructor & Destructor Documentation

◆ WCSimWCDigi() [1/2]

WCSimWCDigi::WCSimWCDigi ( )

Definition at line 10 of file WCSimWCDigi.cc.

◆ ~WCSimWCDigi()

WCSimWCDigi::~WCSimWCDigi ( )

Definition at line 23 of file WCSimWCDigi.cc.

◆ WCSimWCDigi() [2/2]

WCSimWCDigi::WCSimWCDigi ( const WCSimWCDigi right)

Definition at line 28 of file WCSimWCDigi.cc.

Member Function Documentation

◆ AddDigiCompositionInfo()

void WCSimWCDigi::AddDigiCompositionInfo ( std::vector< int > &  digi_comp)
inline

Definition at line 109 of file WCSimWCDigi.hh.

◆ AddGate()

void WCSimWCDigi::AddGate ( int  g,
double  t 
)
inline

Definition at line 91 of file WCSimWCDigi.hh.

◆ AddPe()

void WCSimWCDigi::AddPe ( G4double  hitTime)
inline

Definition at line 172 of file WCSimWCDigi.hh.

◆ AddPhotonToDigiComposition()

void WCSimWCDigi::AddPhotonToDigiComposition ( int  digi_number,
int  photon_number 
)
inline

Definition at line 105 of file WCSimWCDigi.hh.

◆ Draw()

void WCSimWCDigi::Draw ( )

Definition at line 59 of file WCSimWCDigi.cc.

◆ GetDigiCompositionInfo() [1/2]

std::vector< int > WCSimWCDigi::GetDigiCompositionInfo ( int  gate)

Definition at line 73 of file WCSimWCDigi.cc.

◆ GetDigiCompositionInfo() [2/2]

std::map< int, std::vector<int> > WCSimWCDigi::GetDigiCompositionInfo ( )
inline

Definition at line 154 of file WCSimWCDigi.hh.

◆ GetFirstHitTimeInGate()

G4double WCSimWCDigi::GetFirstHitTimeInGate ( G4double  low,
G4double  upevent 
)
inline

Definition at line 260 of file WCSimWCDigi.hh.

◆ GetGateTime()

G4double WCSimWCDigi::GetGateTime ( int  gate)
inline

Definition at line 123 of file WCSimWCDigi.hh.

◆ GetLogicalVolume()

G4LogicalVolume* WCSimWCDigi::GetLogicalVolume ( )
inline

Definition at line 160 of file WCSimWCDigi.hh.

◆ GetOrientation()

G4ThreeVector WCSimWCDigi::GetOrientation ( )
inline

Definition at line 127 of file WCSimWCDigi.hh.

◆ GetParentID()

G4int WCSimWCDigi::GetParentID ( int  gate)
inline

Definition at line 116 of file WCSimWCDigi.hh.

◆ GetPe()

G4double WCSimWCDigi::GetPe ( int  gate)
inline

Definition at line 129 of file WCSimWCDigi.hh.

◆ GetPhotonCreatorProcess()

ProcessType_t WCSimWCDigi::GetPhotonCreatorProcess ( int  gate)
inline

Definition at line 122 of file WCSimWCDigi.hh.

◆ GetPhotonEndDir()

G4ThreeVector WCSimWCDigi::GetPhotonEndDir ( int  gate)
inline

Definition at line 121 of file WCSimWCDigi.hh.

◆ GetPhotonEndPos()

G4ThreeVector WCSimWCDigi::GetPhotonEndPos ( int  gate)
inline

Definition at line 119 of file WCSimWCDigi.hh.

◆ GetPhotonStartDir()

G4ThreeVector WCSimWCDigi::GetPhotonStartDir ( int  gate)
inline

Definition at line 120 of file WCSimWCDigi.hh.

◆ GetPhotonStartPos()

G4ThreeVector WCSimWCDigi::GetPhotonStartPos ( int  gate)
inline

Definition at line 118 of file WCSimWCDigi.hh.

◆ GetPhotonStartTime()

G4float WCSimWCDigi::GetPhotonStartTime ( int  gate)
inline

Definition at line 117 of file WCSimWCDigi.hh.

◆ GetPos()

G4ThreeVector WCSimWCDigi::GetPos ( )
inline

Definition at line 126 of file WCSimWCDigi.hh.

◆ GetPreSmearTime()

G4double WCSimWCDigi::GetPreSmearTime ( int  gate)
inline

Definition at line 152 of file WCSimWCDigi.hh.

◆ GetRot()

G4RotationMatrix WCSimWCDigi::GetRot ( )
inline

Definition at line 128 of file WCSimWCDigi.hh.

◆ GetTime()

G4double WCSimWCDigi::GetTime ( int  gate)
inline

Definition at line 130 of file WCSimWCDigi.hh.

◆ GetTimeMapBegin()

std::map<int,double>::const_iterator WCSimWCDigi::GetTimeMapBegin ( )
inline

Definition at line 150 of file WCSimWCDigi.hh.

◆ GetTimeMapEnd()

std::map<int,double>::const_iterator WCSimWCDigi::GetTimeMapEnd ( )
inline

Definition at line 151 of file WCSimWCDigi.hh.

◆ GetTotalPe()

G4int WCSimWCDigi::GetTotalPe ( )
inline

Definition at line 168 of file WCSimWCDigi.hh.

◆ GetTrackID()

G4int WCSimWCDigi::GetTrackID ( int  gate)
inline

Definition at line 115 of file WCSimWCDigi.hh.

◆ GetTubeID()

G4int WCSimWCDigi::GetTubeID ( )
inline

Definition at line 124 of file WCSimWCDigi.hh.

◆ GetTubeType()

G4String WCSimWCDigi::GetTubeType ( )
inline

Definition at line 125 of file WCSimWCDigi.hh.

◆ HasHitsInGate()

bool WCSimWCDigi::HasHitsInGate ( int  number)
inline

Definition at line 158 of file WCSimWCDigi.hh.

◆ insertionSort()

void WCSimWCDigi::insertionSort ( int  a[],
int  array_size 
)
inline

Definition at line 246 of file WCSimWCDigi.hh.

◆ NumberOfGates()

int WCSimWCDigi::NumberOfGates ( )
inline

Definition at line 156 of file WCSimWCDigi.hh.

◆ NumberOfSubEvents()

int WCSimWCDigi::NumberOfSubEvents ( )
inline

Definition at line 157 of file WCSimWCDigi.hh.

◆ operator delete()

void WCSimWCDigi::operator delete ( void *  aDigi)
inline

Definition at line 299 of file WCSimWCDigi.hh.

◆ operator new()

void * WCSimWCDigi::operator new ( size_t  )
inline

Definition at line 292 of file WCSimWCDigi.hh.

◆ operator=()

const WCSimWCDigi & WCSimWCDigi::operator= ( const WCSimWCDigi right)

Definition at line 40 of file WCSimWCDigi.cc.

◆ operator==()

int WCSimWCDigi::operator== ( const WCSimWCDigi right) const

Definition at line 52 of file WCSimWCDigi.cc.

◆ Print()

void WCSimWCDigi::Print ( )

Definition at line 61 of file WCSimWCDigi.cc.

◆ RemoveDigitizedGate()

void WCSimWCDigi::RemoveDigitizedGate ( G4int  gate)

Definition at line 83 of file WCSimWCDigi.cc.

◆ SetEdep()

void WCSimWCDigi::SetEdep ( G4double  de)
inline

Definition at line 163 of file WCSimWCDigi.hh.

◆ SetLogicalVolume()

void WCSimWCDigi::SetLogicalVolume ( G4LogicalVolume logV)
inline

Definition at line 166 of file WCSimWCDigi.hh.

◆ SetMaxPe()

void WCSimWCDigi::SetMaxPe ( G4int  number = 0)
inline

Definition at line 170 of file WCSimWCDigi.hh.

◆ SetOrientation()

void WCSimWCDigi::SetOrientation ( G4ThreeVector  xyz)
inline

Definition at line 165 of file WCSimWCDigi.hh.

◆ SetParentID()

void WCSimWCDigi::SetParentID ( G4int  gate,
G4int  parent 
)
inline

Definition at line 96 of file WCSimWCDigi.hh.

◆ SetPe()

void WCSimWCDigi::SetPe ( G4int  gate,
G4double  Q 
)
inline

Definition at line 92 of file WCSimWCDigi.hh.

◆ SetPhotonCreatorProcess()

void WCSimWCDigi::SetPhotonCreatorProcess ( G4int  gate,
ProcessType_t  creatorProcess 
)
inline

Definition at line 102 of file WCSimWCDigi.hh.

◆ SetPhotonEndDir()

void WCSimWCDigi::SetPhotonEndDir ( G4int  gate,
const G4ThreeVector direction 
)
inline

Definition at line 101 of file WCSimWCDigi.hh.

◆ SetPhotonEndPos()

void WCSimWCDigi::SetPhotonEndPos ( G4int  gate,
const G4ThreeVector position 
)
inline

Definition at line 99 of file WCSimWCDigi.hh.

◆ SetPhotonStartDir()

void WCSimWCDigi::SetPhotonStartDir ( G4int  gate,
const G4ThreeVector direction 
)
inline

Definition at line 100 of file WCSimWCDigi.hh.

◆ SetPhotonStartPos()

void WCSimWCDigi::SetPhotonStartPos ( G4int  gate,
const G4ThreeVector position 
)
inline

Definition at line 98 of file WCSimWCDigi.hh.

◆ SetPhotonStartTime()

void WCSimWCDigi::SetPhotonStartTime ( G4int  gate,
G4float  starttime 
)
inline

Definition at line 97 of file WCSimWCDigi.hh.

◆ SetPos()

void WCSimWCDigi::SetPos ( G4ThreeVector  xyz)
inline

Definition at line 164 of file WCSimWCDigi.hh.

◆ SetPreSmearTime()

void WCSimWCDigi::SetPreSmearTime ( G4int  gate,
G4double  T 
)
inline

Definition at line 94 of file WCSimWCDigi.hh.

◆ SetRot()

void WCSimWCDigi::SetRot ( G4RotationMatrix  rotMatrix)
inline

Definition at line 167 of file WCSimWCDigi.hh.

◆ SetTime()

void WCSimWCDigi::SetTime ( G4int  gate,
G4double  T 
)
inline

Definition at line 93 of file WCSimWCDigi.hh.

◆ SetTrackID()

void WCSimWCDigi::SetTrackID ( G4int  gate,
G4int  track 
)
inline

Definition at line 95 of file WCSimWCDigi.hh.

◆ SetTubeID()

void WCSimWCDigi::SetTubeID ( G4int  tube)
inline

Definition at line 88 of file WCSimWCDigi.hh.

◆ SetTubeType()

void WCSimWCDigi::SetTubeType ( G4String  tube_type)
inline

Definition at line 89 of file WCSimWCDigi.hh.

◆ SortDigiMapsByHitTime()

void WCSimWCDigi::SortDigiMapsByHitTime ( )
inline

Definition at line 183 of file WCSimWCDigi.hh.

◆ SortHitTimes()

void WCSimWCDigi::SortHitTimes ( )
inline

Definition at line 180 of file WCSimWCDigi.hh.

Member Data Documentation

◆ edep

G4double WCSimWCDigi::edep
private

Definition at line 82 of file WCSimWCDigi.hh.

◆ fDigiComp

std::map<int, std::vector<int> > WCSimWCDigi::fDigiComp
private

IDs of the hits that make up this Digit (do not use for Hits)

Stores the unique IDs of each photon making up a digit Each digit can be made from multiple photons, therefore a vector is used For example: 0:[3,4,6]; 1:[10,11,13,14] The first digit in the event is made of of photons 3,4,6; The second digit is made up of photons: 10,11,13,14

Definition at line 67 of file WCSimWCDigi.hh.

◆ Gates

std::set<int> WCSimWCDigi::Gates
private

Definition at line 51 of file WCSimWCDigi.hh.

◆ maxPe

G4int WCSimWCDigi::maxPe
staticprivate

Definition at line 83 of file WCSimWCDigi.hh.

◆ orient

G4ThreeVector WCSimWCDigi::orient
private

Definition at line 45 of file WCSimWCDigi.hh.

◆ parentSavedTrackID

std::map<int, G4int> WCSimWCDigi::parentSavedTrackID
private

Primary parent ID of the Hit (do not use for Digits)

Definition at line 69 of file WCSimWCDigi.hh.

◆ pe

std::map<int,double> WCSimWCDigi::pe
private

Charge of each Digi.

Definition at line 55 of file WCSimWCDigi.hh.

◆ photonCreatorProcess

std::map<int, ProcessType_t> WCSimWCDigi::photonCreatorProcess
private

Process which created the photon of the Hit (Diego Costas)

Definition at line 75 of file WCSimWCDigi.hh.

◆ photonEndDir

std::map<int, G4ThreeVector> WCSimWCDigi::photonEndDir
private

End dir of the photon of the Hit (do not use for Digits)

Definition at line 74 of file WCSimWCDigi.hh.

◆ photonEndPos

std::map<int, G4ThreeVector> WCSimWCDigi::photonEndPos
private

End point of the photon of the Hit (do not use for Digits)

Definition at line 72 of file WCSimWCDigi.hh.

◆ photonStartDir

std::map<int, G4ThreeVector> WCSimWCDigi::photonStartDir
private

Start dir of the photon of the Hit (do not use for Digits)

Definition at line 73 of file WCSimWCDigi.hh.

◆ photonStartPos

std::map<int, G4ThreeVector> WCSimWCDigi::photonStartPos
private

Start point of the photon of the Hit (do not use for Digits)

Definition at line 71 of file WCSimWCDigi.hh.

◆ photonStartTime

std::map<int, G4float> WCSimWCDigi::photonStartTime
private

Primary parent ID of the Hit (do not use for Digits)

Definition at line 70 of file WCSimWCDigi.hh.

◆ pLogV

G4LogicalVolume* WCSimWCDigi::pLogV
private

Definition at line 46 of file WCSimWCDigi.hh.

◆ pos

G4ThreeVector WCSimWCDigi::pos
private

Definition at line 44 of file WCSimWCDigi.hh.

◆ rot

G4RotationMatrix WCSimWCDigi::rot
private

Definition at line 43 of file WCSimWCDigi.hh.

◆ time

std::map<int,double> WCSimWCDigi::time
private

Time of each Digi.

Definition at line 57 of file WCSimWCDigi.hh.

◆ time_double

std::vector<G4double> WCSimWCDigi::time_double
private

Same information as "time" but stored in a vector for quick time sorting.

Definition at line 58 of file WCSimWCDigi.hh.

◆ time_presmear

std::map<int,double> WCSimWCDigi::time_presmear
private

Time of each Digi, before smearing.

Definition at line 56 of file WCSimWCDigi.hh.

◆ totalPe

G4int WCSimWCDigi::totalPe
private

Definition at line 78 of file WCSimWCDigi.hh.

◆ totalPeInGate

G4int WCSimWCDigi::totalPeInGate
private

Definition at line 81 of file WCSimWCDigi.hh.

◆ trackID

std::map<int, G4int> WCSimWCDigi::trackID
private

TrackID of the photon of the Hit (do not use for Digits)

Definition at line 68 of file WCSimWCDigi.hh.

◆ TriggerTimes

std::vector<double> WCSimWCDigi::TriggerTimes
private

Definition at line 52 of file WCSimWCDigi.hh.

◆ tubeID

G4int WCSimWCDigi::tubeID
private

Definition at line 42 of file WCSimWCDigi.hh.

◆ tubeType

G4String WCSimWCDigi::tubeType
private

Definition at line 47 of file WCSimWCDigi.hh.


The documentation for this class was generated from the following files: