CbmRoot
Loading...
Searching...
No Matches
cbm::ca::tools::MCTrack Class Reference

#include <CaToolsMCTrack.h>

Collaboration diagram for cbm::ca::tools::MCTrack:
[legend]

Public Member Functions

 MCTrack ()=default
 Default constructor.
 
 ~MCTrack ()=default
 Destructor.
 
 MCTrack (const MCTrack &)=default
 Copy constructor.
 
 MCTrack (MCTrack &&)=default
 Move constructor.
 
MCTrackoperator= (const MCTrack &)=default
 Copy assignment operator.
 
MCTrackoperator= (MCTrack &&)=default
 Move assignment operator.
 
void AddPointIndex (int iP)
 
void AddHitIndex (int iH)
 
void AddRecoTrackIndex (int iTre)
 
void AddTouchTrackIndex (int iTre)
 
void Clear ()
 Clears contents.
 
void ClearPointIndexes ()
 Clears container of point indexes.
 
void ClearHitIndexes ()
 Clears container of hit indexes.
 
void ClearRecoTrackIndexes ()
 Clears container of reconstructed track indexes.
 
void ClearTouchTrackIndexes ()
 
int GetChainId () const
 Gets index of the first particle in the decay chain.
 
double GetCharge () const
 Gets charge [e].
 
double GetE () const
 Gets total energy [GeV].
 
double GetEkin () const
 Gets kinetic energy [GeV].
 
double GetEta () const
 Gets pseudo-rapidity.
 
int GetEventId () const
 Gets index of MC event containing this track in external data structures.
 
int GetExternalId () const
 Gets index of the track in the external data structures.
 
int GetFileId () const
 Gets index of MC file containing this track in external data structures.
 
const auto & GetHitIndexes () const
 Gets a reference to associated hit indexes.
 
int GetId () const
 Gets index of track.
 
LinkKey GetLinkKey () const
 Gets link key.
 
double GetMass () const
 Gets particle mass [GeV/c2].
 
int GetMaxNofHitsOnStation () const
 Gets max number of hits within a station.
 
int GetMaxNofPointsOnStation () const
 Gets max number of points within a station.
 
int GetMotherId () const
 Gets index of mother track in CA internal data structures.
 
int GetNofClones () const
 Gets number of clones.
 
int GetNofConsStationsWithHit () const
 Gets number of consecutive stations with hits.
 
int GetNofConsStationsWithPoint () const
 Gets number of consecutive stations with MC points.
 
int GetNofHits () const
 Gets number of hits.
 
int GetNofPoints () const
 Gets number of points.
 
int GetNofRecoTracks () const
 Gets number of assigned reconstructed tracks.
 
int GetNofTouchTracks () const
 Gets number of reconstructed tracks, which contain hits from this MC track.
 
double GetP () const
 Gets absolute momentum [GeV/c].
 
int GetPdgCode () const
 Gets PDG encoding.
 
double GetPhi () const
 Gets azimuthal angle [rad].
 
const auto & GetPointIndexes () const
 Gets a reference to associated point indexes.
 
unsigned GetProcessId () const
 Gets process ID.
 
double GetPt () const
 Gets transverse momentum [GeV/c].
 
double GetPx () const
 Gets x component of momentum [GeV/c].
 
double GetPy () const
 Gets x component of momentum [GeV/c].
 
double GetPz () const
 Gets x component of momentum [GeV/c].
 
double GetRapidity () const
 Gets rapidity.
 
const auto & GetRecoTrackIndexes () const
 Gets a reference to vector associated reconstructed track indexes.
 
double GetSpeed () const
 Gets particle speed [c].
 
double GetStartT () const
 Gets time of the track vertex [ns].
 
double GetStartX () const
 Gets x component of the track vertex [cm].
 
double GetStartY () const
 Gets y component of the track vertex [cm].
 
double GetStartZ () const
 Gets z component of the track vertex [cm].
 
double GetTheta () const
 Gets track polar angle.
 
int GetTotNofStationsWithHit () const
 Gets total number of stations with hits.
 
int GetTotNofStationsWithPoint () const
 Gets total number of stations with MC points.
 
double GetTx () const
 Gets track slope along x-axis.
 
double GetTy () const
 Gets track slope along y-axis.
 
MCPoint GetVertexPoint () const
 Creates an MC point from the track vertex.
 
const auto & GetTouchTrackIndexes () const
 
void InitHitsInfo (const ca::Vector< CbmL1HitDebugInfo > &vHits)
 Initializes information about MC track hits arrangement within stations Defines: #1) Number of stations with hits #2) Maximal number of hits within one station #3) Number of consecutive stations with a hit in MC track.
 
void InitPointsInfo (const ca::Vector< MCPoint > &vPoints)
 Initializes information about MC track points arrangement within stations Defines: #1) Number of stations with points #2) Maximal number of points within one station #3) Maximal number of points within one sensor (with same z-position) #4) Number of consecutive stations with a point in MC track.
 
bool IsAdditional () const
 Returns .... TODO.
 
bool IsDisturbed () const
 Returns true, if this MC track.
 
bool IsPrimary () const
 Returns flag, if the track is primary (process ID is 0 either mother ID is -1)
 
bool IsReconstructable () const
 
bool IsReconstructed () const
 
bool IsSignal () const
 Returns flag, if the track comes from a real particle (true), or from generated noise (false)
 
void SetChainId (int chainId)
 Sets index of the first particle in the decay chain.
 
void SetCharge (double q)
 Sets charge [e].
 
void SetEventId (int iEvent)
 Sets index of MC event containing this track in external data structures.
 
void SetExternalId (int id)
 
void SetFileId (int iFile)
 Sets index of MC file containing this track in external data structures.
 
void SetId (int id)
 Sets index of track in the CA internal data structure (within event/TS)
 
void SetMotherId (int motherId)
 
void SetMass (double mass)
 Sets particle mass [GeV/c2].
 
void SetPdgCode (int pdg)
 Sets PDG encoding.
 
void SetProcessId (unsigned procId)
 Sets process ID.
 
void SetPx (double px)
 Sets x component of momentum [GeV/c].
 
void SetPy (double py)
 Sets x component of momentum [GeV/c].
 
void SetPz (double pz)
 Sets x component of momentum [GeV/c].
 
void SetFlagAdditional (bool isAdditional)
 Sets flag, if the track is additional (not reconstructable but still interesting)
 
void SetFlagReconstructable (bool isReconstructable)
 Sets flag, if the track is reconstructable.
 
void SetFlagSignal (bool isSignal)
 Sets flag, if the track comes from signal.
 
void SetStartT (double t)
 Sets time of the track vertex [ns].
 
void SetStartX (double x)
 Sets x component of the track vertex [cm].
 
void SetStartY (double y)
 Sets y component of the track vertex [cm].
 
void SetStartZ (double z)
 Sets z component of the track vertex [cm].
 
void SortPointIndexes (const std::function< bool(const int &lhs, const int &rhs)> &cmpFn)
 
std::string ToString (int verbose=1, bool header=false) const
 Provides string representation of a track.
 

Private Attributes

double fMass = constants::Undef<double>
 Particle mass [GeV/c2].
 
double fCharge = constants::Undef<double>
 Particle charge [e].
 
double fTime = constants::Undef<double>
 Time of track [cm].
 
std::array< double, 3 > fPos
 Track vertex components [cm].
 
std::array< double, 3 > fMom
 Momentum components [GeV/c].
 
int fPdgCode = constants::Undef<int>
 PDG encoding.
 
unsigned fProcId = constants::Undef<unsigned>
 Process ID (from ROOT::TProcessID)
 
int fId = constants::Undef<int>
 Index of MC track in internal container for TS/event.
 
int fMotherId = constants::Undef<int>
 Index of mother MC track in the external tracks container.
 
int fChainId = constants::Undef<int>
 Index of the first particle in the decay chain.
 
LinkKey fLinkKey
 A link key of this track in the external data structures.
 
bool fIsSignal = false
 If the track comes from signal.
 
bool fIsReconstructable = false
 If track is reconstructable.
 
bool fIsAdditional = false
 If track is not reconstructable, but still interesting.
 
int fNofConsStationsWithHit = constants::Undef<int>
 Number of consecutive stations with hits.
 
int fNofConsStationsWithPoint = constants::Undef<int>
 Number of consecutive stations with points.
 
int fTotNofStationsWithHit = constants::Undef<int>
 Total number of stations with hits.
 
int fTotNofStationsWithPoint = constants::Undef<int>
 Total number of stations with MC points.
 
int fMaxNofPointsOnStation = constants::Undef<int>
 Max number of MC points on a station.
 
int fMaxNofPointsOnSensor = constants::Undef<int>
 Max number of MC points with same Z (means on same sensor)
 
int fMaxNofHitsOnStation = constants::Undef<int>
 Max number of hits on a station.
 
ca::Vector< int > fvPointIndexes = {"ca::tools::fvPointIndexes"}
 Indexes of MC points in ext.container.
 
ca::Vector< int > fvHitIndexes = {"ca::tools::fvHitIndexes"}
 Indexes of hits in int.container.
 
ca::Vector< int > fvRecoTrackIndexes = {"ca::tools::fvRecoTrackIndexes"}
 Indexes of associated reco tracks.
 
ca::Vector< int > fvTouchTrackIndexes = {"ca::tools::fvTouchTrackIndexes"}
 

Detailed Description

Definition at line 29 of file CaToolsMCTrack.h.

Constructor & Destructor Documentation

◆ MCTrack() [1/3]

cbm::ca::tools::MCTrack::MCTrack ( )
default

Default constructor.

◆ ~MCTrack()

cbm::ca::tools::MCTrack::~MCTrack ( )
default

Destructor.

◆ MCTrack() [2/3]

cbm::ca::tools::MCTrack::MCTrack ( const MCTrack & )
default

Copy constructor.

◆ MCTrack() [3/3]

cbm::ca::tools::MCTrack::MCTrack ( MCTrack && )
default

Move constructor.

Member Function Documentation

◆ AddHitIndex()

void cbm::ca::tools::MCTrack::AddHitIndex ( int iH)
inline

Adds index of hit, associated with this MC track

Parameters
iHIndex of hit in the container of internal hits for this event/TS

Definition at line 55 of file CaToolsMCTrack.h.

References fvHitIndexes, and cbm::algo::ca::Vector< T >::push_back_no_warning().

◆ AddPointIndex()

void cbm::ca::tools::MCTrack::AddPointIndex ( int iP)
inline

Adds index of point, associated with this MC track

Parameters
iPIndex of MC point in the container of internal MC points for this event/TS

Definition at line 51 of file CaToolsMCTrack.h.

References fvPointIndexes, and cbm::algo::ca::Vector< T >::push_back_no_warning().

◆ AddRecoTrackIndex()

void cbm::ca::tools::MCTrack::AddRecoTrackIndex ( int iTre)
inline

Adds index of reconstructed track, associated with this MC track

Parameters
iTreIndex of track in the array of reconstructed tracks of the TS

Definition at line 59 of file CaToolsMCTrack.h.

References fvRecoTrackIndexes, and cbm::algo::ca::Vector< T >::push_back_no_warning().

◆ AddTouchTrackIndex()

void cbm::ca::tools::MCTrack::AddTouchTrackIndex ( int iTre)
inline

Adds index of reconstructed track, which is not associated with this MC track but contains some hits, produced by this MC track

Parameters
iTreIndex of track in the array of reconstructed tracks of the TS

Definition at line 64 of file CaToolsMCTrack.h.

References fvTouchTrackIndexes, and cbm::algo::ca::Vector< T >::push_back_no_warning().

◆ Clear()

void MCTrack::Clear ( )

Clears contents.

Definition at line 23 of file CaToolsMCTrack.cxx.

References ClearHitIndexes(), ClearPointIndexes(), ClearRecoTrackIndexes(), and ClearTouchTrackIndexes().

◆ ClearHitIndexes()

void cbm::ca::tools::MCTrack::ClearHitIndexes ( )
inline

Clears container of hit indexes.

Definition at line 73 of file CaToolsMCTrack.h.

References fvHitIndexes.

Referenced by Clear().

◆ ClearPointIndexes()

void cbm::ca::tools::MCTrack::ClearPointIndexes ( )
inline

Clears container of point indexes.

Definition at line 70 of file CaToolsMCTrack.h.

References fvPointIndexes.

Referenced by Clear().

◆ ClearRecoTrackIndexes()

void cbm::ca::tools::MCTrack::ClearRecoTrackIndexes ( )
inline

Clears container of reconstructed track indexes.

Definition at line 76 of file CaToolsMCTrack.h.

References fvRecoTrackIndexes.

Referenced by Clear().

◆ ClearTouchTrackIndexes()

void cbm::ca::tools::MCTrack::ClearTouchTrackIndexes ( )
inline

Clears container of indexes of reconstructed tracks, which are not assigned to this MC track, but contain some of its hits

Definition at line 80 of file CaToolsMCTrack.h.

References fvTouchTrackIndexes.

Referenced by Clear().

◆ GetChainId()

int cbm::ca::tools::MCTrack::GetChainId ( ) const
inline

Gets index of the first particle in the decay chain.

Definition at line 87 of file CaToolsMCTrack.h.

References fChainId.

◆ GetCharge()

double cbm::ca::tools::MCTrack::GetCharge ( ) const
inline

Gets charge [e].

Definition at line 90 of file CaToolsMCTrack.h.

References fCharge.

Referenced by GetVertexPoint().

◆ GetE()

double cbm::ca::tools::MCTrack::GetE ( ) const
inline

Gets total energy [GeV].

Definition at line 93 of file CaToolsMCTrack.h.

References fMass, and GetP().

Referenced by GetEkin(), GetRapidity(), and GetSpeed().

◆ GetEkin()

double cbm::ca::tools::MCTrack::GetEkin ( ) const
inline

Gets kinetic energy [GeV].

Definition at line 96 of file CaToolsMCTrack.h.

References fMass, and GetE().

◆ GetEta()

double cbm::ca::tools::MCTrack::GetEta ( ) const
inline

Gets pseudo-rapidity.

Definition at line 99 of file CaToolsMCTrack.h.

References GetTheta().

Referenced by cbm::ca::TrackTypeQa::FillMCTrack().

◆ GetEventId()

int cbm::ca::tools::MCTrack::GetEventId ( ) const
inline

Gets index of MC event containing this track in external data structures.

Definition at line 102 of file CaToolsMCTrack.h.

References cbm::ca::tools::LinkKey::fEvent, and fLinkKey.

Referenced by GetVertexPoint().

◆ GetExternalId()

int cbm::ca::tools::MCTrack::GetExternalId ( ) const
inline

Gets index of the track in the external data structures.

Definition at line 105 of file CaToolsMCTrack.h.

References cbm::ca::tools::LinkKey::fIndex, and fLinkKey.

◆ GetFileId()

int cbm::ca::tools::MCTrack::GetFileId ( ) const
inline

Gets index of MC file containing this track in external data structures.

Definition at line 108 of file CaToolsMCTrack.h.

References cbm::ca::tools::LinkKey::fFile, and fLinkKey.

Referenced by GetVertexPoint().

◆ GetHitIndexes()

const auto & cbm::ca::tools::MCTrack::GetHitIndexes ( ) const
inline

Gets a reference to associated hit indexes.

Definition at line 111 of file CaToolsMCTrack.h.

References fvHitIndexes.

◆ GetId()

int cbm::ca::tools::MCTrack::GetId ( ) const
inline

Gets index of track.

Definition at line 114 of file CaToolsMCTrack.h.

References fId.

Referenced by cbm::ca::tools::MCData::AddTrack().

◆ GetLinkKey()

LinkKey cbm::ca::tools::MCTrack::GetLinkKey ( ) const
inline

Gets link key.

Definition at line 117 of file CaToolsMCTrack.h.

References fLinkKey.

Referenced by cbm::ca::tools::MCData::AddTrack().

◆ GetMass()

double cbm::ca::tools::MCTrack::GetMass ( ) const
inline

Gets particle mass [GeV/c2].

Definition at line 120 of file CaToolsMCTrack.h.

References fMass.

Referenced by GetVertexPoint().

◆ GetMaxNofHitsOnStation()

int cbm::ca::tools::MCTrack::GetMaxNofHitsOnStation ( ) const
inline

Gets max number of hits within a station.

Definition at line 123 of file CaToolsMCTrack.h.

References fMaxNofHitsOnStation.

◆ GetMaxNofPointsOnStation()

int cbm::ca::tools::MCTrack::GetMaxNofPointsOnStation ( ) const
inline

Gets max number of points within a station.

Definition at line 126 of file CaToolsMCTrack.h.

References fMaxNofPointsOnStation.

◆ GetMotherId()

int cbm::ca::tools::MCTrack::GetMotherId ( ) const
inline

Gets index of mother track in CA internal data structures.

Definition at line 129 of file CaToolsMCTrack.h.

References fMotherId.

Referenced by GetVertexPoint().

◆ GetNofClones()

int cbm::ca::tools::MCTrack::GetNofClones ( ) const
inline

Gets number of clones.

Definition at line 132 of file CaToolsMCTrack.h.

References fvRecoTrackIndexes.

Referenced by cbm::ca::TrackTypeQa::FillMCTrack().

◆ GetNofConsStationsWithHit()

int cbm::ca::tools::MCTrack::GetNofConsStationsWithHit ( ) const
inline

Gets number of consecutive stations with hits.

Definition at line 135 of file CaToolsMCTrack.h.

References fNofConsStationsWithHit.

◆ GetNofConsStationsWithPoint()

int cbm::ca::tools::MCTrack::GetNofConsStationsWithPoint ( ) const
inline

Gets number of consecutive stations with MC points.

Definition at line 138 of file CaToolsMCTrack.h.

References fNofConsStationsWithPoint.

◆ GetNofHits()

int cbm::ca::tools::MCTrack::GetNofHits ( ) const
inline

Gets number of hits.

Definition at line 141 of file CaToolsMCTrack.h.

References fvHitIndexes.

Referenced by ToString().

◆ GetNofPoints()

int cbm::ca::tools::MCTrack::GetNofPoints ( ) const
inline

Gets number of points.

Definition at line 144 of file CaToolsMCTrack.h.

References fvPointIndexes.

Referenced by ToString().

◆ GetNofRecoTracks()

int cbm::ca::tools::MCTrack::GetNofRecoTracks ( ) const
inline

Gets number of assigned reconstructed tracks.

Definition at line 147 of file CaToolsMCTrack.h.

References fvRecoTrackIndexes.

Referenced by ToString().

◆ GetNofTouchTracks()

int cbm::ca::tools::MCTrack::GetNofTouchTracks ( ) const
inline

Gets number of reconstructed tracks, which contain hits from this MC track.

Definition at line 150 of file CaToolsMCTrack.h.

References fvTouchTrackIndexes.

Referenced by ToString().

◆ GetP()

double cbm::ca::tools::MCTrack::GetP ( ) const
inline

Gets absolute momentum [GeV/c].

Definition at line 153 of file CaToolsMCTrack.h.

References fMom.

Referenced by cbm::ca::TrackTypeQa::FillMCTrack(), GetE(), GetSpeed(), GetTheta(), and ToString().

◆ GetPdgCode()

int cbm::ca::tools::MCTrack::GetPdgCode ( ) const
inline

Gets PDG encoding.

Definition at line 156 of file CaToolsMCTrack.h.

References fPdgCode.

Referenced by GetVertexPoint().

◆ GetPhi()

double cbm::ca::tools::MCTrack::GetPhi ( ) const
inline

Gets azimuthal angle [rad].

Definition at line 159 of file CaToolsMCTrack.h.

References fMom.

Referenced by cbm::ca::TrackTypeQa::FillMCTrack().

◆ GetPointIndexes()

const auto & cbm::ca::tools::MCTrack::GetPointIndexes ( ) const
inline

Gets a reference to associated point indexes.

Definition at line 162 of file CaToolsMCTrack.h.

References fvPointIndexes.

◆ GetProcessId()

unsigned cbm::ca::tools::MCTrack::GetProcessId ( ) const
inline

Gets process ID.

Definition at line 165 of file CaToolsMCTrack.h.

References fProcId.

◆ GetPt()

double cbm::ca::tools::MCTrack::GetPt ( ) const
inline

Gets transverse momentum [GeV/c].

Definition at line 168 of file CaToolsMCTrack.h.

References fMom.

Referenced by cbm::ca::TrackTypeQa::FillMCTrack().

◆ GetPx()

double cbm::ca::tools::MCTrack::GetPx ( ) const
inline

Gets x component of momentum [GeV/c].

Definition at line 171 of file CaToolsMCTrack.h.

References fMom.

Referenced by GetVertexPoint().

◆ GetPy()

double cbm::ca::tools::MCTrack::GetPy ( ) const
inline

Gets x component of momentum [GeV/c].

Definition at line 174 of file CaToolsMCTrack.h.

References fMom.

Referenced by GetVertexPoint().

◆ GetPz()

double cbm::ca::tools::MCTrack::GetPz ( ) const
inline

Gets x component of momentum [GeV/c].

Definition at line 177 of file CaToolsMCTrack.h.

References fMom.

Referenced by GetVertexPoint().

◆ GetRapidity()

double cbm::ca::tools::MCTrack::GetRapidity ( ) const
inline

Gets rapidity.

Definition at line 180 of file CaToolsMCTrack.h.

References fMom, and GetE().

Referenced by cbm::ca::TrackTypeQa::FillMCTrack().

◆ GetRecoTrackIndexes()

const auto & cbm::ca::tools::MCTrack::GetRecoTrackIndexes ( ) const
inline

Gets a reference to vector associated reconstructed track indexes.

Definition at line 183 of file CaToolsMCTrack.h.

References fvRecoTrackIndexes.

Referenced by cbm::ca::TrackTypeQa::FillMCTrack().

◆ GetSpeed()

double cbm::ca::tools::MCTrack::GetSpeed ( ) const
inline

Gets particle speed [c].

Definition at line 186 of file CaToolsMCTrack.h.

References GetE(), and GetP().

◆ GetStartT()

double cbm::ca::tools::MCTrack::GetStartT ( ) const
inline

Gets time of the track vertex [ns].

Definition at line 189 of file CaToolsMCTrack.h.

References fTime.

Referenced by GetVertexPoint(), and ToString().

◆ GetStartX()

double cbm::ca::tools::MCTrack::GetStartX ( ) const
inline

Gets x component of the track vertex [cm].

Definition at line 192 of file CaToolsMCTrack.h.

References fPos.

Referenced by GetVertexPoint().

◆ GetStartY()

double cbm::ca::tools::MCTrack::GetStartY ( ) const
inline

Gets y component of the track vertex [cm].

Definition at line 195 of file CaToolsMCTrack.h.

References fPos.

Referenced by GetVertexPoint().

◆ GetStartZ()

double cbm::ca::tools::MCTrack::GetStartZ ( ) const
inline

Gets z component of the track vertex [cm].

Definition at line 198 of file CaToolsMCTrack.h.

References fPos.

Referenced by GetVertexPoint(), and ToString().

◆ GetTheta()

double cbm::ca::tools::MCTrack::GetTheta ( ) const
inline

Gets track polar angle.

Definition at line 201 of file CaToolsMCTrack.h.

References fMom, and GetP().

Referenced by cbm::ca::TrackTypeQa::FillMCTrack(), and GetEta().

◆ GetTotNofStationsWithHit()

int cbm::ca::tools::MCTrack::GetTotNofStationsWithHit ( ) const
inline

Gets total number of stations with hits.

Definition at line 204 of file CaToolsMCTrack.h.

References fTotNofStationsWithHit.

Referenced by cbm::ca::TrackTypeQa::FillMCTrack().

◆ GetTotNofStationsWithPoint()

int cbm::ca::tools::MCTrack::GetTotNofStationsWithPoint ( ) const
inline

Gets total number of stations with MC points.

Definition at line 207 of file CaToolsMCTrack.h.

References fTotNofStationsWithPoint.

Referenced by cbm::ca::TrackTypeQa::FillMCTrack().

◆ GetTouchTrackIndexes()

const auto & cbm::ca::tools::MCTrack::GetTouchTrackIndexes ( ) const
inline

Gets a reference to vector of reconstructed track indexes, not associated with this MC track but containing some hits, produced by this MC track

Definition at line 220 of file CaToolsMCTrack.h.

References fvTouchTrackIndexes.

◆ GetTx()

double cbm::ca::tools::MCTrack::GetTx ( ) const
inline

Gets track slope along x-axis.

Definition at line 210 of file CaToolsMCTrack.h.

References fMom.

Referenced by cbm::ca::TrackTypeQa::FillMCTrack().

◆ GetTy()

double cbm::ca::tools::MCTrack::GetTy ( ) const
inline

Gets track slope along y-axis.

Definition at line 213 of file CaToolsMCTrack.h.

References fMom.

Referenced by cbm::ca::TrackTypeQa::FillMCTrack().

◆ GetVertexPoint()

◆ InitHitsInfo()

void MCTrack::InitHitsInfo ( const ca::Vector< CbmL1HitDebugInfo > & vHits)

Initializes information about MC track hits arrangement within stations Defines: #1) Number of stations with hits #2) Maximal number of hits within one station #3) Number of consecutive stations with a hit in MC track.

Parameters
vHitsVector of hits for a given TS

Definition at line 70 of file CaToolsMCTrack.cxx.

References fMaxNofHitsOnStation, fNofConsStationsWithHit, fTotNofStationsWithHit, and fvHitIndexes.

◆ InitPointsInfo()

void MCTrack::InitPointsInfo ( const ca::Vector< MCPoint > & vPoints)

Initializes information about MC track points arrangement within stations Defines: #1) Number of stations with points #2) Maximal number of points within one station #3) Maximal number of points within one sensor (with same z-position) #4) Number of consecutive stations with a point in MC track.

Parameters
vPointsVector of points for a given TS

Definition at line 129 of file CaToolsMCTrack.cxx.

References fMaxNofPointsOnSensor, fMaxNofPointsOnStation, fNofConsStationsWithPoint, fTotNofStationsWithPoint, and fvPointIndexes.

◆ IsAdditional()

bool cbm::ca::tools::MCTrack::IsAdditional ( ) const
inline

Returns .... TODO.

Definition at line 245 of file CaToolsMCTrack.h.

References fIsAdditional.

◆ IsDisturbed()

bool cbm::ca::tools::MCTrack::IsDisturbed ( ) const
inline

Returns true, if this MC track.

Definition at line 248 of file CaToolsMCTrack.h.

References fvTouchTrackIndexes.

Referenced by cbm::ca::TrackTypeQa::FillMCTrack().

◆ IsPrimary()

bool cbm::ca::tools::MCTrack::IsPrimary ( ) const
inline

Returns flag, if the track is primary (process ID is 0 either mother ID is -1)

Definition at line 251 of file CaToolsMCTrack.h.

References fProcId.

◆ IsReconstructable()

bool cbm::ca::tools::MCTrack::IsReconstructable ( ) const
inline

Returns flag, if track is reconstructable. The definition of particle reconstructability depends on the performance mode and should be determined in the experiment-specific MC module

Definition at line 255 of file CaToolsMCTrack.h.

References fIsReconstructable.

Referenced by ToString().

◆ IsReconstructed()

bool cbm::ca::tools::MCTrack::IsReconstructed ( ) const
inline

Definition at line 257 of file CaToolsMCTrack.h.

References fvRecoTrackIndexes.

Referenced by cbm::ca::TrackTypeQa::FillMCTrack(), and ToString().

◆ IsSignal()

bool cbm::ca::tools::MCTrack::IsSignal ( ) const
inline

Returns flag, if the track comes from a real particle (true), or from generated noise (false)

Definition at line 260 of file CaToolsMCTrack.h.

References fIsSignal.

◆ operator=() [1/2]

MCTrack & cbm::ca::tools::MCTrack::operator= ( const MCTrack & )
default

Copy assignment operator.

◆ operator=() [2/2]

MCTrack & cbm::ca::tools::MCTrack::operator= ( MCTrack && )
default

Move assignment operator.

◆ SetChainId()

void cbm::ca::tools::MCTrack::SetChainId ( int chainId)
inline

Sets index of the first particle in the decay chain.

Definition at line 268 of file CaToolsMCTrack.h.

References fChainId.

◆ SetCharge()

void cbm::ca::tools::MCTrack::SetCharge ( double q)
inline

Sets charge [e].

Definition at line 271 of file CaToolsMCTrack.h.

References fCharge.

◆ SetEventId()

void cbm::ca::tools::MCTrack::SetEventId ( int iEvent)
inline

Sets index of MC event containing this track in external data structures.

Definition at line 274 of file CaToolsMCTrack.h.

References cbm::ca::tools::LinkKey::fEvent, and fLinkKey.

◆ SetExternalId()

void cbm::ca::tools::MCTrack::SetExternalId ( int id)
inline

Sets index of track in external data structures

Note
This index should be used to navigate through links

Definition at line 278 of file CaToolsMCTrack.h.

References cbm::ca::tools::LinkKey::fIndex, and fLinkKey.

◆ SetFileId()

void cbm::ca::tools::MCTrack::SetFileId ( int iFile)
inline

Sets index of MC file containing this track in external data structures.

Definition at line 281 of file CaToolsMCTrack.h.

References cbm::ca::tools::LinkKey::fFile, and fLinkKey.

◆ SetFlagAdditional()

void cbm::ca::tools::MCTrack::SetFlagAdditional ( bool isAdditional)
inline

Sets flag, if the track is additional (not reconstructable but still interesting)

Definition at line 309 of file CaToolsMCTrack.h.

References fIsAdditional.

◆ SetFlagReconstructable()

void cbm::ca::tools::MCTrack::SetFlagReconstructable ( bool isReconstructable)
inline

Sets flag, if the track is reconstructable.

Definition at line 312 of file CaToolsMCTrack.h.

References fIsReconstructable.

◆ SetFlagSignal()

void cbm::ca::tools::MCTrack::SetFlagSignal ( bool isSignal)
inline

Sets flag, if the track comes from signal.

Definition at line 315 of file CaToolsMCTrack.h.

References fIsSignal.

◆ SetId()

void cbm::ca::tools::MCTrack::SetId ( int id)
inline

Sets index of track in the CA internal data structure (within event/TS)

Definition at line 284 of file CaToolsMCTrack.h.

References fId.

Referenced by cbm::ca::MCModule::ReadMCTracks().

◆ SetMass()

void cbm::ca::tools::MCTrack::SetMass ( double mass)
inline

Sets particle mass [GeV/c2].

Definition at line 291 of file CaToolsMCTrack.h.

References fMass.

◆ SetMotherId()

void cbm::ca::tools::MCTrack::SetMotherId ( int motherId)
inline

Sets index of mother track

Note
Mother ID should refer to the internal index of track

Definition at line 288 of file CaToolsMCTrack.h.

References fMotherId.

◆ SetPdgCode()

void cbm::ca::tools::MCTrack::SetPdgCode ( int pdg)
inline

Sets PDG encoding.

Definition at line 294 of file CaToolsMCTrack.h.

References fPdgCode.

◆ SetProcessId()

void cbm::ca::tools::MCTrack::SetProcessId ( unsigned procId)
inline

Sets process ID.

Definition at line 297 of file CaToolsMCTrack.h.

References fProcId.

◆ SetPx()

void cbm::ca::tools::MCTrack::SetPx ( double px)
inline

Sets x component of momentum [GeV/c].

Definition at line 300 of file CaToolsMCTrack.h.

References fMom.

◆ SetPy()

void cbm::ca::tools::MCTrack::SetPy ( double py)
inline

Sets x component of momentum [GeV/c].

Definition at line 303 of file CaToolsMCTrack.h.

References fMom.

◆ SetPz()

void cbm::ca::tools::MCTrack::SetPz ( double pz)
inline

Sets x component of momentum [GeV/c].

Definition at line 306 of file CaToolsMCTrack.h.

References fMom.

◆ SetStartT()

void cbm::ca::tools::MCTrack::SetStartT ( double t)
inline

Sets time of the track vertex [ns].

Definition at line 318 of file CaToolsMCTrack.h.

References fTime.

◆ SetStartX()

void cbm::ca::tools::MCTrack::SetStartX ( double x)
inline

Sets x component of the track vertex [cm].

Definition at line 321 of file CaToolsMCTrack.h.

References fPos, and x.

◆ SetStartY()

void cbm::ca::tools::MCTrack::SetStartY ( double y)
inline

Sets y component of the track vertex [cm].

Definition at line 324 of file CaToolsMCTrack.h.

References fPos, and y.

◆ SetStartZ()

void cbm::ca::tools::MCTrack::SetStartZ ( double z)
inline

Sets z component of the track vertex [cm].

Definition at line 327 of file CaToolsMCTrack.h.

References fPos.

◆ SortPointIndexes()

void MCTrack::SortPointIndexes ( const std::function< bool(const int &lhs, const int &rhs)> & cmpFn)

Sorts points inside track by a provided hit comparison function function

Parameters
cmpFnFunctional object to compare mcPoints

Definition at line 211 of file CaToolsMCTrack.cxx.

References fvPointIndexes.

◆ ToString()

std::string MCTrack::ToString ( int verbose = 1,
bool header = false ) const

Provides string representation of a track.

Parameters
verboseVerbosity level
headerFlag: to print header or data
Returns
String representation

Definition at line 218 of file CaToolsMCTrack.cxx.

References fId, fMotherId, fPdgCode, fvHitIndexes, fvPointIndexes, fvRecoTrackIndexes, fvTouchTrackIndexes, GetNofHits(), GetNofPoints(), GetNofRecoTracks(), GetNofTouchTracks(), GetP(), GetStartT(), GetStartZ(), IsReconstructable(), and IsReconstructed().

Member Data Documentation

◆ fChainId

int cbm::ca::tools::MCTrack::fChainId = constants::Undef<int>
private

Index of the first particle in the decay chain.

Definition at line 359 of file CaToolsMCTrack.h.

Referenced by GetChainId(), and SetChainId().

◆ fCharge

double cbm::ca::tools::MCTrack::fCharge = constants::Undef<double>
private

Particle charge [e].

Definition at line 345 of file CaToolsMCTrack.h.

Referenced by GetCharge(), and SetCharge().

◆ fId

int cbm::ca::tools::MCTrack::fId = constants::Undef<int>
private

Index of MC track in internal container for TS/event.

Definition at line 357 of file CaToolsMCTrack.h.

Referenced by GetId(), SetId(), and ToString().

◆ fIsAdditional

bool cbm::ca::tools::MCTrack::fIsAdditional = false
private

If track is not reconstructable, but still interesting.

Definition at line 366 of file CaToolsMCTrack.h.

Referenced by IsAdditional(), and SetFlagAdditional().

◆ fIsReconstructable

bool cbm::ca::tools::MCTrack::fIsReconstructable = false
private

If track is reconstructable.

Definition at line 365 of file CaToolsMCTrack.h.

Referenced by IsReconstructable(), and SetFlagReconstructable().

◆ fIsSignal

bool cbm::ca::tools::MCTrack::fIsSignal = false
private

If the track comes from signal.

Definition at line 364 of file CaToolsMCTrack.h.

Referenced by IsSignal(), and SetFlagSignal().

◆ fLinkKey

LinkKey cbm::ca::tools::MCTrack::fLinkKey
private
Initial value:

A link key of this track in the external data structures.

Definition at line 361 of file CaToolsMCTrack.h.

Referenced by GetEventId(), GetExternalId(), GetFileId(), GetLinkKey(), SetEventId(), SetExternalId(), and SetFileId().

◆ fMass

double cbm::ca::tools::MCTrack::fMass = constants::Undef<double>
private

Particle mass [GeV/c2].

Definition at line 344 of file CaToolsMCTrack.h.

Referenced by GetE(), GetEkin(), GetMass(), and SetMass().

◆ fMaxNofHitsOnStation

int cbm::ca::tools::MCTrack::fMaxNofHitsOnStation = constants::Undef<int>
private

Max number of hits on a station.

Definition at line 375 of file CaToolsMCTrack.h.

Referenced by GetMaxNofHitsOnStation(), and InitHitsInfo().

◆ fMaxNofPointsOnSensor

int cbm::ca::tools::MCTrack::fMaxNofPointsOnSensor = constants::Undef<int>
private

Max number of MC points with same Z (means on same sensor)

Definition at line 374 of file CaToolsMCTrack.h.

Referenced by InitPointsInfo().

◆ fMaxNofPointsOnStation

int cbm::ca::tools::MCTrack::fMaxNofPointsOnStation = constants::Undef<int>
private

Max number of MC points on a station.

Definition at line 373 of file CaToolsMCTrack.h.

Referenced by GetMaxNofPointsOnStation(), and InitPointsInfo().

◆ fMom

std::array<double, 3> cbm::ca::tools::MCTrack::fMom
private
Initial value:

Momentum components [GeV/c].

Definition at line 350 of file CaToolsMCTrack.h.

Referenced by GetP(), GetPhi(), GetPt(), GetPx(), GetPy(), GetPz(), GetRapidity(), GetTheta(), GetTx(), GetTy(), SetPx(), SetPy(), and SetPz().

◆ fMotherId

int cbm::ca::tools::MCTrack::fMotherId = constants::Undef<int>
private

Index of mother MC track in the external tracks container.

Definition at line 358 of file CaToolsMCTrack.h.

Referenced by GetMotherId(), SetMotherId(), and ToString().

◆ fNofConsStationsWithHit

int cbm::ca::tools::MCTrack::fNofConsStationsWithHit = constants::Undef<int>
private

Number of consecutive stations with hits.

Definition at line 369 of file CaToolsMCTrack.h.

Referenced by GetNofConsStationsWithHit(), and InitHitsInfo().

◆ fNofConsStationsWithPoint

int cbm::ca::tools::MCTrack::fNofConsStationsWithPoint = constants::Undef<int>
private

Number of consecutive stations with points.

Definition at line 370 of file CaToolsMCTrack.h.

Referenced by GetNofConsStationsWithPoint(), and InitPointsInfo().

◆ fPdgCode

int cbm::ca::tools::MCTrack::fPdgCode = constants::Undef<int>
private

PDG encoding.

Definition at line 353 of file CaToolsMCTrack.h.

Referenced by GetPdgCode(), SetPdgCode(), and ToString().

◆ fPos

std::array<double, 3> cbm::ca::tools::MCTrack::fPos
private
Initial value:

Track vertex components [cm].

Definition at line 348 of file CaToolsMCTrack.h.

Referenced by GetStartX(), GetStartY(), GetStartZ(), SetStartX(), SetStartY(), and SetStartZ().

◆ fProcId

unsigned cbm::ca::tools::MCTrack::fProcId = constants::Undef<unsigned>
private

Process ID (from ROOT::TProcessID)

Definition at line 354 of file CaToolsMCTrack.h.

Referenced by GetProcessId(), IsPrimary(), and SetProcessId().

◆ fTime

double cbm::ca::tools::MCTrack::fTime = constants::Undef<double>
private

Time of track [cm].

Definition at line 346 of file CaToolsMCTrack.h.

Referenced by GetStartT(), and SetStartT().

◆ fTotNofStationsWithHit

int cbm::ca::tools::MCTrack::fTotNofStationsWithHit = constants::Undef<int>
private

Total number of stations with hits.

Definition at line 371 of file CaToolsMCTrack.h.

Referenced by GetTotNofStationsWithHit(), and InitHitsInfo().

◆ fTotNofStationsWithPoint

int cbm::ca::tools::MCTrack::fTotNofStationsWithPoint = constants::Undef<int>
private

Total number of stations with MC points.

Definition at line 372 of file CaToolsMCTrack.h.

Referenced by GetTotNofStationsWithPoint(), and InitPointsInfo().

◆ fvHitIndexes

ca::Vector<int> cbm::ca::tools::MCTrack::fvHitIndexes = {"ca::tools::fvHitIndexes"}
private

Indexes of hits in int.container.

Definition at line 378 of file CaToolsMCTrack.h.

Referenced by AddHitIndex(), ClearHitIndexes(), GetHitIndexes(), GetNofHits(), InitHitsInfo(), and ToString().

◆ fvPointIndexes

ca::Vector<int> cbm::ca::tools::MCTrack::fvPointIndexes = {"ca::tools::fvPointIndexes"}
private

Indexes of MC points in ext.container.

Definition at line 377 of file CaToolsMCTrack.h.

Referenced by AddPointIndex(), ClearPointIndexes(), GetNofPoints(), GetPointIndexes(), InitPointsInfo(), SortPointIndexes(), and ToString().

◆ fvRecoTrackIndexes

ca::Vector<int> cbm::ca::tools::MCTrack::fvRecoTrackIndexes = {"ca::tools::fvRecoTrackIndexes"}
private

Indexes of associated reco tracks.

Definition at line 379 of file CaToolsMCTrack.h.

Referenced by AddRecoTrackIndex(), ClearRecoTrackIndexes(), GetNofClones(), GetNofRecoTracks(), GetRecoTrackIndexes(), IsReconstructed(), and ToString().

◆ fvTouchTrackIndexes

ca::Vector<int> cbm::ca::tools::MCTrack::fvTouchTrackIndexes = {"ca::tools::fvTouchTrackIndexes"}
private

Pointers to non-associated tracks, which use hits from this track

Definition at line 380 of file CaToolsMCTrack.h.

Referenced by AddTouchTrackIndex(), ClearTouchTrackIndexes(), GetNofTouchTracks(), GetTouchTrackIndexes(), IsDisturbed(), and ToString().


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