Belle II Software development
PlumeSimHit Class Reference

Class PlumeSimHit - Geant4 simulated hit for the PLUME detector. More...

#include <PlumeSimHit.h>

Inheritance diagram for PlumeSimHit:
SimHitBase RelationsInterface< BASE >

Public Member Functions

 PlumeSimHit ()
 default constructor for ROOT
 
 PlumeSimHit (int a_pdgID, int a_sensorID, int a_trackID, float a_trackVx_x, float a_trackVx_y, float a_trackVx_z, float a_energyDep, float a_nielDep, float a_posIN_x, float a_posIN_y, float a_posIN_z, float a_posIN_u, float a_posIN_v, float a_posIN_w, float a_posOUT_u, float a_posOUT_v, float a_posOUT_w, float a_momentum_x, float a_momentum_y, float a_momentum_z, float a_thetaAngle, float a_phiAngle, float a_globalTime)
 Standard constructor See parameters definition below.
 
int getpdgID () const
 particle PDG id
 
int getsensorID () const
 sensor ID
 
int gettrackID () const
 track ID
 
float gettrackVx_x () const
 track production vertex x coordinates in G4 ref
 
float gettrackVx_y () const
 track production vertex y coordinates in G4 ref
 
float gettrackVx_z () const
 track production vertex z coordinates in G4 ref
 
float getenergyDep () const
 deposited energy in MeV
 
float getnielDep () const
 non ionizing deposited energy
 
float getposIN_x () const
 incoming track position x in G4 ref, in mm
 
float getposIN_y () const
 incoming track position y in G4 ref, in mm
 
float getposIN_z () const
 incoming track position z in G4 ref, in mm
 
float getposIN_u () const
 incoming track position u in sensor ref, in mm
 
float getposIN_v () const
 incoming track position v in sensor ref, in mm
 
float getposIN_w () const
 incoming track position w in sensor ref, in mm
 
float getposOUT_u () const
 outcoming track position u in sensor ref, in mm
 
float getposOUT_v () const
 outcoming track position v in sensor ref, in mm
 
float getposOUT_w () const
 outcoming track position w in sensor ref, in mm
 
float getmomentum_x () const
 incoming track momentum, x coordinates in G4 ref, in GeV
 
float getmomentum_y () const
 incoming track momentum, y coordinates in G4 ref, in GeV
 
float getmomentum_z () const
 incoming track momentum, z coordinates in G4 ref, in GeV
 
float getthetaAngle () const
 local (sensor ref) theta angle, out of sensor plane, in degree
 
float getphiAngle () const
 local (sensor ref) phi angle, in sensor plane, in degree
 
float getglobalTime () const
 global time
 
int geteventnumber () const
 event number
 
void seteventnumber (const int evtn)
 set an event number
 
virtual void setBackgroundTag (unsigned int backgroundTag)
 Set background tag.
 
virtual unsigned short getBackgroundTag () const
 Get background tag.
 
virtual void shiftInTime (float)
 The method to shift the SimHit in time.
 
virtual float getGlobalTime () const
 Get time of the hit.
 
void addRelationTo (const RelationsInterface< BASE > *object, float weight=1.0, const std::string &namedRelation="") const
 Add a relation from this object to another object (with caching).
 
void addRelationTo (const TObject *object, float weight=1.0, const std::string &namedRelation="") const
 Add a relation from this object to another object (no caching, can be quite slow).
 
void copyRelations (const RelationsInterface< BASE > *sourceObj)
 Copies all relations of sourceObj (pointing from or to sourceObj) to this object (including weights).
 
template<class TO >
RelationVector< TO > getRelationsTo (const std::string &name="", const std::string &namedRelation="") const
 Get the relations that point from this object to another store array.
 
template<class FROM >
RelationVector< FROM > getRelationsFrom (const std::string &name="", const std::string &namedRelation="") const
 Get the relations that point from another store array to this object.
 
template<class T >
RelationVector< T > getRelationsWith (const std::string &name="", const std::string &namedRelation="") const
 Get the relations between this object and another store array.
 
template<class TO >
TO * getRelatedTo (const std::string &name="", const std::string &namedRelation="") const
 Get the object to which this object has a relation.
 
template<class FROM >
FROM * getRelatedFrom (const std::string &name="", const std::string &namedRelation="") const
 Get the object from which this object has a relation.
 
template<class T >
T * getRelated (const std::string &name="", const std::string &namedRelation="") const
 Get the object to or from which this object has a relation.
 
template<class TO >
std::pair< TO *, float > getRelatedToWithWeight (const std::string &name="", const std::string &namedRelation="") const
 Get first related object & weight of relation pointing to an array.
 
template<class FROM >
std::pair< FROM *, float > getRelatedFromWithWeight (const std::string &name="", const std::string &namedRelation="") const
 Get first related object & weight of relation pointing from an array.
 
template<class T >
std::pair< T *, float > getRelatedWithWeight (const std::string &name="", const std::string &namedRelation="") const
 Get first related object & weight of relation pointing from/to an array.
 
virtual std::string getName () const
 Return a short name that describes this object, e.g.
 
virtual std::string getInfoHTML () const
 Return a short summary of this object's contents in HTML format.
 
std::string getInfo () const
 Return a short summary of this object's contents in raw text format.
 
std::string getArrayName () const
 Get name of array this object is stored in, or "" if not found.
 
int getArrayIndex () const
 Returns this object's array index (in StoreArray), or -1 if not found.
 

Protected Member Functions

TClonesArray * getArrayPointer () const
 Returns the pointer to the raw DataStore array holding this object (protected since these arrays are easy to misuse).
 

Private Member Functions

 ClassDef (RelationsInterface, 0)
 defines interface for accessing relations of objects in StoreArray.
 

Private Attributes

int m_pdgID
 particle PDG id
 
int m_sensorID
 sensor ID
 
int m_trackID
 track ID
 
float m_trackVx_x
 track production vertex x coordinates in G4 ref
 
float m_trackVx_y
 track production vertex y coordinates in G4 ref
 
float m_trackVx_z
 track production vertex z coordinates in G4 ref
 
float m_energyDepMeV
 deposited energy in MeV
 
float m_nielDepMeV
 non ionizing deposited energy
 
float m_posINmm_x
 incoming track position x in G4 ref, in mm
 
float m_posINmm_y
 incoming track position y in G4 ref, in mm
 
float m_posINmm_z
 incoming track position z in G4 ref, in mm
 
float m_posINmm_u
 incoming track position u in sensor ref, in mm
 
float m_posINmm_v
 incoming track position v in sensor ref, in mm
 
float m_posINmm_w
 incoming track position w in sensor ref, in mm
 
float m_posOUTmm_u
 outcoming track position u in sensor ref, in mm
 
float m_posOUTmm_v
 outcoming track position v in sensor ref, in mm
 
float m_posOUTmm_w
 outcoming track position w in sensor ref, in mm
 
float m_momGeV_x
 incoming track momentum, x coordinates in G4 ref, in GeV
 
float m_momGeV_y
 incoming track momentum, y coordinates in G4 ref, in GeV
 
float m_momGeV_z
 incoming track momentum, z coordinates in G4 ref, in GeV
 
float m_thetaLoc
 local (sensor ref) theta angle, out of sensor plane, in degree
 
float m_phiLoc
 local (sensor ref) phi angle, in sensor plane, in degree
 
float m_globalTime
 global time
 
unsigned m_evtNum = 0
 event number
 
unsigned short m_backgroundTag
 Background tag.
 
DataStore::StoreEntrym_cacheDataStoreEntry
 Cache of the data store entry to which this object belongs.
 
int m_cacheArrayIndex
 Cache of the index in the TClonesArray to which this object belongs.
 

Detailed Description

Class PlumeSimHit - Geant4 simulated hit for the PLUME detector.

This class holds particle hit data from geant4 simulation. As the simulated hit classes are used to generate detector response, they contain local information.

Definition at line 27 of file PlumeSimHit.h.

Constructor & Destructor Documentation

◆ PlumeSimHit() [1/2]

PlumeSimHit ( )
inline

default constructor for ROOT

Definition at line 33 of file PlumeSimHit.h.

float m_trackVx_x
track production vertex x coordinates in G4 ref
Definition: PlumeSimHit.h:118
float m_globalTime
global time
Definition: PlumeSimHit.h:156
float m_thetaLoc
local (sensor ref) theta angle, out of sensor plane, in degree
Definition: PlumeSimHit.h:152
float m_momGeV_x
incoming track momentum, x coordinates in G4 ref, in GeV
Definition: PlumeSimHit.h:146
float m_posOUTmm_v
outcoming track position v in sensor ref, in mm
Definition: PlumeSimHit.h:142
float m_momGeV_z
incoming track momentum, z coordinates in G4 ref, in GeV
Definition: PlumeSimHit.h:150
float m_phiLoc
local (sensor ref) phi angle, in sensor plane, in degree
Definition: PlumeSimHit.h:154
int m_trackID
track ID
Definition: PlumeSimHit.h:116
float m_momGeV_y
incoming track momentum, y coordinates in G4 ref, in GeV
Definition: PlumeSimHit.h:148
int m_pdgID
particle PDG id
Definition: PlumeSimHit.h:112
float m_trackVx_y
track production vertex y coordinates in G4 ref
Definition: PlumeSimHit.h:120
float m_posINmm_z
incoming track position z in G4 ref, in mm
Definition: PlumeSimHit.h:132
float m_nielDepMeV
non ionizing deposited energy
Definition: PlumeSimHit.h:126
float m_energyDepMeV
deposited energy in MeV
Definition: PlumeSimHit.h:124
float m_posINmm_w
incoming track position w in sensor ref, in mm
Definition: PlumeSimHit.h:138
int m_sensorID
sensor ID
Definition: PlumeSimHit.h:114
float m_posINmm_u
incoming track position u in sensor ref, in mm
Definition: PlumeSimHit.h:134
float m_posOUTmm_w
outcoming track position w in sensor ref, in mm
Definition: PlumeSimHit.h:144
float m_posINmm_x
incoming track position x in G4 ref, in mm
Definition: PlumeSimHit.h:128
float m_trackVx_z
track production vertex z coordinates in G4 ref
Definition: PlumeSimHit.h:122
float m_posINmm_y
incoming track position y in G4 ref, in mm
Definition: PlumeSimHit.h:130
float m_posOUTmm_u
outcoming track position u in sensor ref, in mm
Definition: PlumeSimHit.h:140
float m_posINmm_v
incoming track position v in sensor ref, in mm
Definition: PlumeSimHit.h:136

◆ PlumeSimHit() [2/2]

PlumeSimHit ( int  a_pdgID,
int  a_sensorID,
int  a_trackID,
float  a_trackVx_x,
float  a_trackVx_y,
float  a_trackVx_z,
float  a_energyDep,
float  a_nielDep,
float  a_posIN_x,
float  a_posIN_y,
float  a_posIN_z,
float  a_posIN_u,
float  a_posIN_v,
float  a_posIN_w,
float  a_posOUT_u,
float  a_posOUT_v,
float  a_posOUT_w,
float  a_momentum_x,
float  a_momentum_y,
float  a_momentum_z,
float  a_thetaAngle,
float  a_phiAngle,
float  a_globalTime 
)
inline

Standard constructor See parameters definition below.

Definition at line 43 of file PlumeSimHit.h.

47 :
48 SimHitBase(), m_pdgID(a_pdgID), m_sensorID(a_sensorID), m_trackID(a_trackID), m_trackVx_x(a_trackVx_x),
49 m_trackVx_y(a_trackVx_y), m_trackVx_z(a_trackVx_z), m_energyDepMeV(a_energyDep),
50 m_nielDepMeV(a_nielDep), m_posINmm_x(a_posIN_x), m_posINmm_y(a_posIN_y), m_posINmm_z(a_posIN_z),
51 m_posINmm_u(a_posIN_u), m_posINmm_v(a_posIN_v), m_posINmm_w(a_posIN_w),
52 m_posOUTmm_u(a_posOUT_u), m_posOUTmm_v(a_posOUT_v), m_posOUTmm_w(a_posOUT_w),
53 m_momGeV_x(a_momentum_x), m_momGeV_y(a_momentum_y), m_momGeV_z(a_momentum_z),
54 m_thetaLoc(a_thetaAngle), m_phiLoc(a_phiAngle), m_globalTime(a_globalTime)
55 {
56 }
SimHitBase()
Constructor.
Definition: SimHitBase.h:33

Member Function Documentation

◆ addRelationTo() [1/2]

void addRelationTo ( const RelationsInterface< BASE > *  object,
float  weight = 1.0,
const std::string &  namedRelation = "" 
) const
inlineinherited

Add a relation from this object to another object (with caching).

Parameters
objectThe object to which the relation should point.
weightThe weight of the relation.
namedRelationAdditional name for the relation, or "" for the default naming

Definition at line 142 of file RelationsObject.h.

143 {
144 if (object)
146 object, object->m_cacheDataStoreEntry, object->m_cacheArrayIndex, weight, namedRelation);
147 }
void addRelation(const TObject *fromObject, StoreEntry *&fromEntry, int &fromIndex, const TObject *toObject, StoreEntry *&toEntry, int &toIndex, float weight, const std::string &namedRelation)
Add a relation from an object in a store array to another object in a store array.
Definition: DataStore.cc:492
static DataStore & Instance()
Instance of singleton Store.
Definition: DataStore.cc:54
DataStore::StoreEntry * m_cacheDataStoreEntry
Cache of the data store entry to which this object belongs.
int m_cacheArrayIndex
Cache of the index in the TClonesArray to which this object belongs.

◆ addRelationTo() [2/2]

void addRelationTo ( const TObject *  object,
float  weight = 1.0,
const std::string &  namedRelation = "" 
) const
inlineinherited

Add a relation from this object to another object (no caching, can be quite slow).

Parameters
objectThe object to which the relation should point.
weightThe weight of the relation.
namedRelationAdditional name for the relation, or "" for the default naming

Definition at line 155 of file RelationsObject.h.

156 {
157 StoreEntry* toEntry = nullptr;
158 int toIndex = -1;
159 DataStore::Instance().addRelation(this, m_cacheDataStoreEntry, m_cacheArrayIndex, object, toEntry, toIndex, weight, namedRelation);
160 }

◆ copyRelations()

void copyRelations ( const RelationsInterface< BASE > *  sourceObj)
inlineinherited

Copies all relations of sourceObj (pointing from or to sourceObj) to this object (including weights).

Useful if you want to make a complete copy of a StoreArray object to make modifications to it, but retain all information on linked objects.

Note: this only works if sourceObj inherits from the same base (e.g. RelationsObject), and only for related objects that also inherit from the same base.

Definition at line 170 of file RelationsObject.h.

171 {
172 if (!sourceObj)
173 return;
174 auto fromRels = sourceObj->getRelationsFrom<RelationsInterface<BASE>>("ALL");
175 for (unsigned int iRel = 0; iRel < fromRels.size(); iRel++) {
176 fromRels.object(iRel)->addRelationTo(this, fromRels.weight(iRel));
177 }
178
179 auto toRels = sourceObj->getRelationsTo<RelationsInterface<BASE>>("ALL");
180 for (unsigned int iRel = 0; iRel < toRels.size(); iRel++) {
181 this->addRelationTo(toRels.object(iRel), toRels.weight(iRel));
182 }
183 }
void addRelationTo(const RelationsInterface< BASE > *object, float weight=1.0, const std::string &namedRelation="") const
Add a relation from this object to another object (with caching).

◆ getArrayIndex()

int getArrayIndex ( ) const
inlineinherited

Returns this object's array index (in StoreArray), or -1 if not found.

Definition at line 385 of file RelationsObject.h.

386 {
388 return m_cacheArrayIndex;
389 }
bool findStoreEntry(const TObject *object, StoreEntry *&entry, int &index)
Find an object in an array in the data store.
Definition: DataStore.cc:398

◆ getArrayName()

std::string getArrayName ( ) const
inlineinherited

Get name of array this object is stored in, or "" if not found.

Definition at line 377 of file RelationsObject.h.

◆ getArrayPointer()

TClonesArray * getArrayPointer ( ) const
inlineprotectedinherited

Returns the pointer to the raw DataStore array holding this object (protected since these arrays are easy to misuse).

Definition at line 418 of file RelationsObject.h.

419 {
422 return nullptr;
424 }
TClonesArray * getPtrAsArray() const
Return ptr cast to TClonesArray.
Definition: StoreEntry.cc:83

◆ getBackgroundTag()

virtual unsigned short getBackgroundTag ( ) const
inlinevirtualinherited

Get background tag.

Returns
The background tag value.

Definition at line 46 of file SimHitBase.h.

46{ return m_backgroundTag; }
unsigned short m_backgroundTag
Background tag.
Definition: SimHitBase.h:68

◆ getenergyDep()

float getenergyDep ( ) const
inline

deposited energy in MeV

Definition at line 70 of file PlumeSimHit.h.

70{ return m_energyDepMeV; }

◆ geteventnumber()

int geteventnumber ( ) const
inline

event number

Definition at line 104 of file PlumeSimHit.h.

104{return m_evtNum;}
unsigned m_evtNum
event number
Definition: PlumeSimHit.h:158

◆ getglobalTime()

float getglobalTime ( ) const
inline

global time

Definition at line 102 of file PlumeSimHit.h.

102{ return m_globalTime; }

◆ getGlobalTime()

virtual float getGlobalTime ( ) const
inlinevirtualinherited

Get time of the hit.

Re-implement for your subdetector's SimHit class.

Returns
global time

Reimplemented in ARICHSimHit, CDCSimHit, ECLHit, KLMSimHit, TOPSimHit, and VXDSimHit.

Definition at line 63 of file SimHitBase.h.

63{ return 0; }

◆ getInfo()

std::string getInfo ( ) const
inlineinherited

Return a short summary of this object's contents in raw text format.

Returns the contents of getInfoHTML() while translating line-breaks etc.

Note
: You don't need to implement this function (it's not virtual), getInfoHTML() is enough.

Definition at line 370 of file RelationsObject.h.

371 {
373 }
virtual std::string getInfoHTML() const
Return a short summary of this object's contents in HTML format.
std::string htmlToPlainText(const std::string &html)
See RelationsObject::getInfo()

◆ getInfoHTML()

virtual std::string getInfoHTML ( ) const
inlinevirtualinherited

Return a short summary of this object's contents in HTML format.

Reimplement this in your own class to provide useful output for display or debugging purposes. For example, you might do something like:

std::stringstream out;
out << "<b>PDG</b>: " << m_pdg << "<br>";
out << "<b>Covariance Matrix</b>: " << HTML::getString(getCovariance5()) << "<br>";
return out.str();
std::string getString(const TMatrixFBase &matrix, int precision=2, bool color=true)
get HTML table representing a matrix.
Definition: HTML.cc:24
See also
Particle::getInfoHTML() for a more complex example.
HTML for some utility functions.
Use getInfo() to get a raw text version of this output.

Reimplemented in Particle, Cluster, MCParticle, PIDLikelihood, SoftwareTriggerResult, Track, TrackFitResult, TRGSummary, and RecoTrack.

Definition at line 362 of file RelationsObject.h.

362{ return ""; }

◆ getmomentum_x()

float getmomentum_x ( ) const
inline

incoming track momentum, x coordinates in G4 ref, in GeV

Definition at line 92 of file PlumeSimHit.h.

92{ return m_momGeV_x; }

◆ getmomentum_y()

float getmomentum_y ( ) const
inline

incoming track momentum, y coordinates in G4 ref, in GeV

Definition at line 94 of file PlumeSimHit.h.

94{ return m_momGeV_y; }

◆ getmomentum_z()

float getmomentum_z ( ) const
inline

incoming track momentum, z coordinates in G4 ref, in GeV

Definition at line 96 of file PlumeSimHit.h.

96{ return m_momGeV_z; }

◆ getName()

virtual std::string getName ( ) const
inlinevirtualinherited

Return a short name that describes this object, e.g.

pi+ for an MCParticle.

Reimplemented in Particle, MCParticle, and SpacePoint.

Definition at line 344 of file RelationsObject.h.

344{ return ""; }

◆ getnielDep()

float getnielDep ( ) const
inline

non ionizing deposited energy

Definition at line 72 of file PlumeSimHit.h.

72{ return m_nielDepMeV; }

◆ getpdgID()

int getpdgID ( ) const
inline

particle PDG id

Definition at line 58 of file PlumeSimHit.h.

58{ return m_pdgID; }

◆ getphiAngle()

float getphiAngle ( ) const
inline

local (sensor ref) phi angle, in sensor plane, in degree

Definition at line 100 of file PlumeSimHit.h.

100{ return m_phiLoc; }

◆ getposIN_u()

float getposIN_u ( ) const
inline

incoming track position u in sensor ref, in mm

Definition at line 80 of file PlumeSimHit.h.

80{ return m_posINmm_u; }

◆ getposIN_v()

float getposIN_v ( ) const
inline

incoming track position v in sensor ref, in mm

Definition at line 82 of file PlumeSimHit.h.

82{ return m_posINmm_v; }

◆ getposIN_w()

float getposIN_w ( ) const
inline

incoming track position w in sensor ref, in mm

Definition at line 84 of file PlumeSimHit.h.

84{ return m_posINmm_w; }

◆ getposIN_x()

float getposIN_x ( ) const
inline

incoming track position x in G4 ref, in mm

Definition at line 74 of file PlumeSimHit.h.

74{ return m_posINmm_x; }

◆ getposIN_y()

float getposIN_y ( ) const
inline

incoming track position y in G4 ref, in mm

Definition at line 76 of file PlumeSimHit.h.

76{ return m_posINmm_y; }

◆ getposIN_z()

float getposIN_z ( ) const
inline

incoming track position z in G4 ref, in mm

Definition at line 78 of file PlumeSimHit.h.

78{ return m_posINmm_z; }

◆ getposOUT_u()

float getposOUT_u ( ) const
inline

outcoming track position u in sensor ref, in mm

Definition at line 86 of file PlumeSimHit.h.

86{ return m_posOUTmm_u; }

◆ getposOUT_v()

float getposOUT_v ( ) const
inline

outcoming track position v in sensor ref, in mm

Definition at line 88 of file PlumeSimHit.h.

88{ return m_posOUTmm_v; }

◆ getposOUT_w()

float getposOUT_w ( ) const
inline

outcoming track position w in sensor ref, in mm

Definition at line 90 of file PlumeSimHit.h.

90{ return m_posOUTmm_w; }

◆ getRelated()

T * getRelated ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get the object to or from which this object has a relation.

Template Parameters
TThe class of objects to or from which the relation points.
Parameters
nameThe name of the store array to or from which the relation points. If empty the default store array name for class T will be used. If the special name "ALL" is given all store arrays containing objects of type T are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
The first related object or a null pointer.

Definition at line 278 of file RelationsObject.h.

279 {
281 T::Class(), name, namedRelation).object);
282 }
@ c_BothSides
Combination of c_FromSide and c_ToSide.
Definition: DataStore.h:79
Belle2::RelationEntry getRelationWith(ESearchSide searchSide, const TObject *object, StoreEntry *&entry, int &index, const TClass *withClass, const std::string &withName, const std::string &namedRelation)
Get the first relation between an object and another object in a store array.
Definition: DataStore.cc:597
TObject * object
Pointer to the object.
Definition: RelationEntry.h:32

◆ getRelatedFrom()

FROM * getRelatedFrom ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get the object from which this object has a relation.

Template Parameters
FROMThe class of objects from which the relation points.
Parameters
nameThe name of the store array from which the relation points. If empty the default store array name for class FROM will be used. If the special name "ALL" is given all store arrays containing objects of type FROM are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
The first related object or a null pointer.

Definition at line 263 of file RelationsObject.h.

264 {
266 m_cacheArrayIndex, FROM::Class(), name, namedRelation).object);
267 }
@ c_FromSide
Return relations/objects pointed from (to a given object).
Definition: DataStore.h:77

◆ getRelatedFromWithWeight()

std::pair< FROM *, float > getRelatedFromWithWeight ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get first related object & weight of relation pointing from an array.

Template Parameters
FROMThe class of objects from which the relation points.
Parameters
nameThe name of the store array from which the relation points. If empty the default store array name for class FROM will be used. If the special name "ALL" is given all store arrays containing objects of type FROM are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
Pair of first related object and the relation weight, or (NULL, 1.0) if none found.

Definition at line 314 of file RelationsObject.h.

316 {
318 FROM::Class(), name, namedRelation);
319 return std::make_pair(static_cast<FROM*>(entry.object), entry.weight);
320 }

◆ getRelatedTo()

TO * getRelatedTo ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get the object to which this object has a relation.

Template Parameters
TOThe class of objects to which the relation points.
Parameters
nameThe name of the store array to which the relation points. If empty the default store array name for class TO will be used. If the special name "ALL" is given all store arrays containing objects of type TO are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
The first related object or a null pointer.

Definition at line 248 of file RelationsObject.h.

249 {
251 TO::Class(), name, namedRelation).object);
252 }
@ c_ToSide
Return relations/objects pointed to (from a given object).
Definition: DataStore.h:78

◆ getRelatedToWithWeight()

std::pair< TO *, float > getRelatedToWithWeight ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get first related object & weight of relation pointing to an array.

Template Parameters
TOThe class of objects to which the relation points.
Parameters
nameThe name of the store array to which the relation points. If empty the default store array name for class TO will be used. If the special name "ALL" is given all store arrays containing objects of type TO are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
Pair of first related object and the relation weight, or (NULL, 1.0) if none found.

Definition at line 297 of file RelationsObject.h.

299 {
301 TO::Class(), name, namedRelation);
302 return std::make_pair(static_cast<TO*>(entry.object), entry.weight);
303 }

◆ getRelatedWithWeight()

std::pair< T *, float > getRelatedWithWeight ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get first related object & weight of relation pointing from/to an array.

Template Parameters
TThe class of objects to or from which the relation points.
Parameters
nameThe name of the store array to or from which the relation points. If empty the default store array name for class T will be used. If the special name "ALL" is given all store arrays containing objects of type T are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
Pair of first related object and the relation weight, or (NULL, 1.0) if none found.

Definition at line 331 of file RelationsObject.h.

333 {
335 T::Class(), name, namedRelation);
336 return std::make_pair(static_cast<T*>(entry.object), entry.weight);
337 }

◆ getRelationsFrom()

RelationVector< FROM > getRelationsFrom ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get the relations that point from another store array to this object.

Template Parameters
FROMThe class of objects from which the relations point.
Parameters
nameThe name of the store array from which the relations point. If empty the default store array name for class FROM will be used. If the special name "ALL" is given all store arrays containing objects of type FROM are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
A vector of relations.

Definition at line 212 of file RelationsObject.h.

214 {
216 m_cacheArrayIndex, FROM::Class(), name, namedRelation));
217 }
RelationVector< T > getRelationsWith(const std::string &name="", const std::string &namedRelation="") const
Get the relations between this object and another store array.

◆ getRelationsTo()

RelationVector< TO > getRelationsTo ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get the relations that point from this object to another store array.

Template Parameters
TOThe class of objects to which the relations point.
Parameters
nameThe name of the store array to which the relations point. If empty the default store array name for class TO will be used. If the special name "ALL" is given all store arrays containing objects of type TO are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
A vector of relations.

Definition at line 197 of file RelationsObject.h.

198 {
200 m_cacheArrayIndex, TO::Class(), name, namedRelation));
201 }

◆ getRelationsWith()

RelationVector< T > getRelationsWith ( const std::string &  name = "",
const std::string &  namedRelation = "" 
) const
inlineinherited

Get the relations between this object and another store array.

Relations in both directions are returned.

Template Parameters
TThe class of objects to or from which the relations point.
Parameters
nameThe name of the store array to or from which the relations point. If empty the default store array name for class T will be used. If the special name "ALL" is given all store arrays containing objects of type T are considered.
namedRelationAdditional name for the relation, or "" for the default naming
Returns
A vector of relations.

Definition at line 230 of file RelationsObject.h.

231 {
233 m_cacheArrayIndex, T::Class(), name, namedRelation));
234 }

◆ getsensorID()

int getsensorID ( ) const
inline

sensor ID

Definition at line 60 of file PlumeSimHit.h.

60{ return m_sensorID; }

◆ getthetaAngle()

float getthetaAngle ( ) const
inline

local (sensor ref) theta angle, out of sensor plane, in degree

Definition at line 98 of file PlumeSimHit.h.

98{ return m_thetaLoc; }

◆ gettrackID()

int gettrackID ( ) const
inline

track ID

Definition at line 62 of file PlumeSimHit.h.

62{ return m_trackID; }

◆ gettrackVx_x()

float gettrackVx_x ( ) const
inline

track production vertex x coordinates in G4 ref

Definition at line 64 of file PlumeSimHit.h.

64{ return m_trackVx_x; }

◆ gettrackVx_y()

float gettrackVx_y ( ) const
inline

track production vertex y coordinates in G4 ref

Definition at line 66 of file PlumeSimHit.h.

66{ return m_trackVx_y; }

◆ gettrackVx_z()

float gettrackVx_z ( ) const
inline

track production vertex z coordinates in G4 ref

Definition at line 68 of file PlumeSimHit.h.

68{ return m_trackVx_z; }

◆ setBackgroundTag()

virtual void setBackgroundTag ( unsigned int  backgroundTag)
inlinevirtualinherited

Set background tag.

Parameters
backgroundTagThe desired setting of the background tag.

Definition at line 39 of file SimHitBase.h.

40 { m_backgroundTag = static_cast<unsigned short>(backgroundTag); }

◆ seteventnumber()

void seteventnumber ( const int  evtn)
inline

set an event number

Definition at line 106 of file PlumeSimHit.h.

106{m_evtNum = (unsigned)evtn;}

◆ shiftInTime()

virtual void shiftInTime ( float  )
inlinevirtualinherited

The method to shift the SimHit in time.

Re-implement for your subdetector's SimHit class if time-aware background is needed. Tha parameter delta the function would take is the desired time shift. However, it's unused in many cases and thus not explicitely given here, but only as an example as a comment.

Reimplemented in TPCSimHit, ARICHSimHit, BeamabortSimHit, BgoHit, BgoSimHit, ClawSimHit, CsiHit, CsiHit_v2, CsiSimHit, DosiHit, DosiSimHit, PindiodeSimHit, QcsmonitorSimHit, CDCSimHit, ECLHit, ECLSimHit, KLMSimHit, TOPSimHit, and VXDSimHit.

Definition at line 56 of file SimHitBase.h.

56{}

Member Data Documentation

◆ m_backgroundTag

unsigned short m_backgroundTag
privateinherited

Background tag.

Definition at line 68 of file SimHitBase.h.

◆ m_cacheArrayIndex

int m_cacheArrayIndex
mutableprivateinherited

Cache of the index in the TClonesArray to which this object belongs.

Definition at line 432 of file RelationsObject.h.

◆ m_cacheDataStoreEntry

DataStore::StoreEntry* m_cacheDataStoreEntry
mutableprivateinherited

Cache of the data store entry to which this object belongs.

Definition at line 429 of file RelationsObject.h.

◆ m_energyDepMeV

float m_energyDepMeV
private

deposited energy in MeV

Definition at line 124 of file PlumeSimHit.h.

◆ m_evtNum

unsigned m_evtNum = 0
private

event number

Definition at line 158 of file PlumeSimHit.h.

◆ m_globalTime

float m_globalTime
private

global time

Definition at line 156 of file PlumeSimHit.h.

◆ m_momGeV_x

float m_momGeV_x
private

incoming track momentum, x coordinates in G4 ref, in GeV

Definition at line 146 of file PlumeSimHit.h.

◆ m_momGeV_y

float m_momGeV_y
private

incoming track momentum, y coordinates in G4 ref, in GeV

Definition at line 148 of file PlumeSimHit.h.

◆ m_momGeV_z

float m_momGeV_z
private

incoming track momentum, z coordinates in G4 ref, in GeV

Definition at line 150 of file PlumeSimHit.h.

◆ m_nielDepMeV

float m_nielDepMeV
private

non ionizing deposited energy

Definition at line 126 of file PlumeSimHit.h.

◆ m_pdgID

int m_pdgID
private

particle PDG id

Definition at line 112 of file PlumeSimHit.h.

◆ m_phiLoc

float m_phiLoc
private

local (sensor ref) phi angle, in sensor plane, in degree

Definition at line 154 of file PlumeSimHit.h.

◆ m_posINmm_u

float m_posINmm_u
private

incoming track position u in sensor ref, in mm

Definition at line 134 of file PlumeSimHit.h.

◆ m_posINmm_v

float m_posINmm_v
private

incoming track position v in sensor ref, in mm

Definition at line 136 of file PlumeSimHit.h.

◆ m_posINmm_w

float m_posINmm_w
private

incoming track position w in sensor ref, in mm

Definition at line 138 of file PlumeSimHit.h.

◆ m_posINmm_x

float m_posINmm_x
private

incoming track position x in G4 ref, in mm

Definition at line 128 of file PlumeSimHit.h.

◆ m_posINmm_y

float m_posINmm_y
private

incoming track position y in G4 ref, in mm

Definition at line 130 of file PlumeSimHit.h.

◆ m_posINmm_z

float m_posINmm_z
private

incoming track position z in G4 ref, in mm

Definition at line 132 of file PlumeSimHit.h.

◆ m_posOUTmm_u

float m_posOUTmm_u
private

outcoming track position u in sensor ref, in mm

Definition at line 140 of file PlumeSimHit.h.

◆ m_posOUTmm_v

float m_posOUTmm_v
private

outcoming track position v in sensor ref, in mm

Definition at line 142 of file PlumeSimHit.h.

◆ m_posOUTmm_w

float m_posOUTmm_w
private

outcoming track position w in sensor ref, in mm

Definition at line 144 of file PlumeSimHit.h.

◆ m_sensorID

int m_sensorID
private

sensor ID

Definition at line 114 of file PlumeSimHit.h.

◆ m_thetaLoc

float m_thetaLoc
private

local (sensor ref) theta angle, out of sensor plane, in degree

Definition at line 152 of file PlumeSimHit.h.

◆ m_trackID

int m_trackID
private

track ID

Definition at line 116 of file PlumeSimHit.h.

◆ m_trackVx_x

float m_trackVx_x
private

track production vertex x coordinates in G4 ref

Definition at line 118 of file PlumeSimHit.h.

◆ m_trackVx_y

float m_trackVx_y
private

track production vertex y coordinates in G4 ref

Definition at line 120 of file PlumeSimHit.h.

◆ m_trackVx_z

float m_trackVx_z
private

track production vertex z coordinates in G4 ref

Definition at line 122 of file PlumeSimHit.h.


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