CbmRoot
CbmTrdCluster Class Reference

Data Container for TRD clusters. More...

#include <CbmTrdCluster.h>

Inheritance diagram for CbmTrdCluster:
[legend]
Collaboration diagram for CbmTrdCluster:
[legend]

Public Types

enum  CbmTrdClusterDef { kTriang = 5, kProfileStart, kProfileStop }
 

Public Member Functions

 CbmTrdCluster ()
 Default constructor. More...
 
 CbmTrdCluster (const CbmTrdCluster &ref)
 
 CbmTrdCluster (const std::vector< Int_t > &indices, Int_t address)
 
 CbmTrdCluster (Int_t address, Int_t idx, Int_t ch, Int_t r, Int_t time)
 Constructor starting from first digit. More...
 
virtual ~CbmTrdCluster ()
 Destructor. More...
 
Bool_t AddDigi (Int_t idx, Int_t channel=-1, Int_t terminator=0, Int_t dt=0)
 Append digi to cluster. More...
 
void Clear (Option_t *)
 reset cluster data More...
 
UShort_t GetNCols () const
 
UShort_t GetNRows () const
 
UShort_t GetEndCh () const
 
UShort_t GetRow () const
 
UShort_t GetStartCh () const
 
UShort_t GetStartTime () const
 
Bool_t HasTrianglePads () const
 
Bool_t HasOpenStart () const
 
Bool_t HasOpenStop () const
 
Int_t IsChannelInRange (Int_t ch) const
 Query on RO channel list. More...
 
Bool_t Merge (CbmTrdCluster *second)
 Merge current cluster with info from second. More...
 
void ReInit (Int_t address, Int_t row, Int_t time)
 Initialize basic parameters of the cluster. More...
 
void SetNCols (UShort_t ncols)
 
void SetNRows (UShort_t nrows)
 
void SetTrianglePads (Bool_t set=kTRUE)
 
void SetProfileStart (Bool_t set=kTRUE)
 
void SetProfileStop (Bool_t set=kTRUE)
 
virtual std::string ToString () const
 Extended functionality. More...
 
void AddDigi (Int_t index)
 Add digi to cluster. More...
 
void AddDigis (const std::vector< Int_t > &indices)
 Add array of digi to cluster. More...
 
void SetDigis (const std::vector< Int_t > &indices)
 Set array of digi to cluster. Overwrites existing array. More...
 
Int_t GetNofDigis () const
 Number of digis in cluster. More...
 
Int_t GetDigi (Int_t index) const
 Get digi at position index. More...
 
const std::vector< Int_t > & GetDigis () const
 Get array of digi indices. More...
 
void ClearDigis ()
 Remove all digis. More...
 
Int_t GetAddress () const
 
CbmMatchGetMatch () const
 
void SetAddress (Int_t address)
 
void SetMatch (CbmMatch *match)
 

Protected Attributes

UChar_t fNCols
 
UChar_t fNRows
 
UShort_t fStartCh
 
UShort_t fStartTime
 channel address of first channel More...
 

Private Member Functions

 ClassDef (CbmCluster, 2)
 

Private Attributes

std::vector< Int_t > fDigis
 Array of digi indices. More...
 
Int_t fAddress
 Unique detector ID. More...
 
CbmMatchfMatch
 link to Monte-Carlo information More...
 

Detailed Description

Data Container for TRD clusters.

Author
Florian Uhlig f.uhl.nosp@m.ig@g.nosp@m.si.de

Definition at line 23 of file CbmTrdCluster.h.

Member Enumeration Documentation

◆ CbmTrdClusterDef

Enumerator
kTriang 

set type of pads on which the cluster is reconstructed

kProfileStart 

only for triangular if no T in first col

kProfileStop 

only for triangular if no R in last col

Definition at line 25 of file CbmTrdCluster.h.

Constructor & Destructor Documentation

◆ CbmTrdCluster() [1/4]

CbmTrdCluster::CbmTrdCluster ( )

Default constructor.

Definition at line 19 of file CbmTrdCluster.cxx.

◆ CbmTrdCluster() [2/4]

CbmTrdCluster::CbmTrdCluster ( const CbmTrdCluster ref)

Definition at line 27 of file CbmTrdCluster.cxx.

◆ CbmTrdCluster() [3/4]

CbmTrdCluster::CbmTrdCluster ( const std::vector< Int_t > &  indices,
Int_t  address 
)

Definition at line 35 of file CbmTrdCluster.cxx.

◆ CbmTrdCluster() [4/4]

CbmTrdCluster::CbmTrdCluster ( Int_t  address,
Int_t  idx,
Int_t  ch,
Int_t  r,
Int_t  time 
)

Constructor starting from first digit.

Parameters
[in]addressglobal module address
[in]idxglobal digi index in the TClonesArray
[in]chRO channel address within the module
[in]rmodule row for the RO channel
[in]timerelative buffer DAQ time

Definition at line 43 of file CbmTrdCluster.cxx.

References AddDigi(), and ReInit().

◆ ~CbmTrdCluster()

CbmTrdCluster::~CbmTrdCluster ( )
virtual

Destructor.

Definition at line 58 of file CbmTrdCluster.cxx.

Member Function Documentation

◆ AddDigi() [1/2]

Bool_t CbmTrdCluster::AddDigi ( Int_t  idx,
Int_t  channel = -1,
Int_t  terminator = 0,
Int_t  dt = 0 
)

Append digi to cluster.

Parameters
[in]idxindex of digi in TClonesArray
[in]channelRO channel for digi
[in]terminatorstate of digi for triangular pads: 0 if complete, -/+ if T/R misses
[in]dtupdate start time of cluster if current digi is prompt
Returns
true if successful

Extend basic functionality of CbmCluster::AddDigi(). If channel>=0 add this info to channel map.

Definition at line 62 of file CbmTrdCluster.cxx.

References CbmCluster::AddDigi(), CbmCluster::AddDigis(), CbmCluster::ClearDigis(), fNCols, fStartCh, fStartTime, CbmCluster::GetDigis(), GetEndCh(), HasOpenStart(), HasOpenStop(), SetProfileStart(), and SetProfileStop().

Referenced by CbmTrdCluster().

◆ AddDigi() [2/2]

void CbmCluster::AddDigi ( Int_t  index)
inlineinherited

Add digi to cluster.

Parameters
[in]indexDigi index in TClonesArray.

Definition at line 47 of file CbmCluster.h.

References CbmCluster::fDigis.

Referenced by AddDigi(), and CbmMvdSensorClusterfinderTask::Exec().

◆ AddDigis()

void CbmCluster::AddDigis ( const std::vector< Int_t > &  indices)
inlineinherited

◆ ClassDef()

CbmCluster::ClassDef ( CbmCluster  ,
 
)
privateinherited

◆ Clear()

void CbmTrdCluster::Clear ( Option_t *  )

reset cluster data

Definition at line 103 of file CbmTrdCluster.cxx.

References CbmCluster::ClearDigis(), fNCols, fNRows, fStartCh, and fStartTime.

◆ ClearDigis()

void CbmCluster::ClearDigis ( )
inlineinherited

Remove all digis.

Definition at line 87 of file CbmCluster.h.

References CbmCluster::fDigis.

Referenced by AddDigi(), Clear(), and Merge().

◆ GetAddress()

◆ GetDigi()

Int_t CbmCluster::GetDigi ( Int_t  index) const
inlineinherited

◆ GetDigis()

const std::vector<Int_t>& CbmCluster::GetDigis ( ) const
inlineinherited

Get array of digi indices.

Returns
Array of digi indices in TClonesArray.

Definition at line 82 of file CbmCluster.h.

References CbmCluster::fDigis.

Referenced by AddDigi(), compareClusterDataMembers(), and Merge().

◆ GetEndCh()

UShort_t CbmTrdCluster::GetEndCh ( ) const
inline

Definition at line 66 of file CbmTrdCluster.h.

References fNCols, and fStartCh.

Referenced by AddDigi().

◆ GetMatch()

CbmMatch* CbmCluster::GetMatch ( ) const
inlineinherited

Definition at line 91 of file CbmCluster.h.

References CbmCluster::fMatch.

Referenced by compareClusterDataMembers(), and CbmKFTrackFitQA::StsHitMatch().

◆ GetNCols()

UShort_t CbmTrdCluster::GetNCols ( ) const
inline

Accessors

Definition at line 64 of file CbmTrdCluster.h.

References fNCols.

Referenced by PairAnalysisVarManager::FillVarTrdCluster(), and CbmTrdModuleRecT::MakeHit().

◆ GetNofDigis()

Int_t CbmCluster::GetNofDigis ( ) const
inlineinherited

Number of digis in cluster.

Returns
Number of digis in cluster.

Definition at line 69 of file CbmCluster.h.

References CbmCluster::fDigis.

Referenced by LxTBFinder::AddHit(), CbmStsAlgoAnaCluster::AnaSizeN(), CbmStsTrackFinder::CalculateEloss(), CbmMuchFindVectorsQA::CheckMatchGem(), CbmMuchHitFinderQa::ClusterDeconvQa(), compareClusterDataMembers(), CbmMvdSensorHitfinderTask::ComputeCenterOfGravity(), CbmMuchFindHitsGem::CreateHits(), CbmMuchTrackFinderIdeal::DoFind(), CbmMvdClusterAna::Exec(), CbmBinnedTrackerQANew::Exec(), CbmTrdHitProducer::Exec(), CbmBinnedTrackerQA::Exec(), CbmTrdQa::Exec(), LxFinderTriplet::Exec(), CbmTrdHitDensityQa::Exec(), CbmStsAlgoAnaCluster::Exec(), CbmTrdRecoQa::Exec(), LxTBTrdFinder::Exec(), LxTrackAna::Exec(), LxTrackAnaTriplet::Exec(), LxTBMLFinder::Exec(), LxFinder::Exec(), CbmBinnedDebug::Exec(), CbmGlobalTrackingQA::Exec(), CbmTrdOccupancyQa::Exec(), CbmMuchFindHitsGem::ExecClusteringPeaks(), CbmMuchFindHitsGem::ExecClusteringSimple(), CbmHadronAnalysis::ExecEvent(), CbmMuchMatchTracks::ExecPixel(), PairAnalysisVarManager::FillVarTrdCluster(), CbmBinnedTrackerQA::HandleMuch(), CbmBinnedTrackerQA::HandleSts(), CbmBinnedTrackerQA::HandleTrd(), CbmBinnedTrackerQA::IterateTrdHits(), CbmMatchRecoToMC::MatchClusters(), CbmLitClusteringQa::ProcessClusters(), CbmMuchHitFinderQa::PullsQa(), CbmKFParticleFinderPID::SetRecoPID(), CbmMuchFindVectorsGem::SetTrackId(), CbmTrdFindVectors::SetTrackId(), CbmMuchHitFinderQa::StatisticsQa(), CbmCluster::ToString(), CbmStsCluster::ToString(), and CbmStsAlgoAnaCluster::WeightedMean().

◆ GetNRows()

UShort_t CbmTrdCluster::GetNRows ( ) const
inline

Definition at line 65 of file CbmTrdCluster.h.

References fNRows.

Referenced by PairAnalysisVarManager::FillVarTrdCluster(), and GetRow().

◆ GetRow()

UShort_t CbmTrdCluster::GetRow ( ) const
inline

Definition at line 67 of file CbmTrdCluster.h.

References GetNRows().

Referenced by Merge(), and ToString().

◆ GetStartCh()

UShort_t CbmTrdCluster::GetStartCh ( ) const
inline

Definition at line 68 of file CbmTrdCluster.h.

References fStartCh.

Referenced by CbmTrdModuleRecT::MakeHit().

◆ GetStartTime()

UShort_t CbmTrdCluster::GetStartTime ( ) const
inline

Definition at line 69 of file CbmTrdCluster.h.

References fStartTime.

Referenced by CbmTrdModuleRecT::MakeHit().

◆ HasOpenStart()

Bool_t CbmTrdCluster::HasOpenStart ( ) const
inline

Definition at line 71 of file CbmTrdCluster.h.

References fNRows, and kProfileStart.

Referenced by AddDigi(), CbmTrdModuleRecT::MakeHit(), Merge(), and ToString().

◆ HasOpenStop()

Bool_t CbmTrdCluster::HasOpenStop ( ) const
inline

Definition at line 72 of file CbmTrdCluster.h.

References fNRows, and kProfileStop.

Referenced by AddDigi(), CbmTrdModuleRecT::MakeHit(), Merge(), and ToString().

◆ HasTrianglePads()

Bool_t CbmTrdCluster::HasTrianglePads ( ) const
inline

Definition at line 70 of file CbmTrdCluster.h.

References fNRows, and kTriang.

Referenced by Merge(), and ToString().

◆ IsChannelInRange()

Int_t CbmTrdCluster::IsChannelInRange ( Int_t  ch) const

Query on RO channel list.

Parameters
[in]channelRO channel for digi
Returns
-1 before range; 0 in range; 1 after range; -2 cluster empty of digits

Definition at line 128 of file CbmTrdCluster.cxx.

References fNCols, and fStartCh.

◆ Merge()

Bool_t CbmTrdCluster::Merge ( CbmTrdCluster second)

Merge current cluster with info from second.

Parameters
[in]secondcluster to be added
Returns
success or fail

Definition at line 139 of file CbmTrdCluster.cxx.

References CbmCluster::AddDigis(), CbmCluster::ClearDigis(), fNCols, fStartCh, fStartTime, CbmCluster::GetDigis(), GetRow(), HasOpenStart(), HasOpenStop(), HasTrianglePads(), SetProfileStart(), and SetProfileStop().

◆ ReInit()

void CbmTrdCluster::ReInit ( Int_t  address,
Int_t  row,
Int_t  time 
)

Initialize basic parameters of the cluster.

Parameters
[in]addressglobal module address
[in]rowcluster row in the module
[in]timecluster time in time buffer

Definition at line 112 of file CbmTrdCluster.cxx.

References fNCols, fStartCh, fStartTime, CbmCluster::SetAddress(), SetNRows(), SetProfileStart(), and SetProfileStop().

Referenced by CbmTrdCluster().

◆ SetAddress()

void CbmCluster::SetAddress ( Int_t  address)
inlineinherited

◆ SetDigis()

void CbmCluster::SetDigis ( const std::vector< Int_t > &  indices)
inlineinherited

Set array of digi to cluster. Overwrites existing array.

Parameters
[in]indicesArray of digi indices in TClonesArray.

Definition at line 61 of file CbmCluster.h.

References CbmCluster::fDigis.

Referenced by CbmTrdModuleRecR::addClusters().

◆ SetMatch()

void CbmCluster::SetMatch ( CbmMatch match)
inherited

Definition at line 68 of file CbmCluster.cxx.

References CbmCluster::fMatch.

◆ SetNCols()

void CbmTrdCluster::SetNCols ( UShort_t  ncols)
inline

Setters

Definition at line 91 of file CbmTrdCluster.h.

References fNCols.

Referenced by CbmTrdModuleRecR::addClusters().

◆ SetNRows()

void CbmTrdCluster::SetNRows ( UShort_t  nrows)
inline

Definition at line 92 of file CbmTrdCluster.h.

References fNRows.

Referenced by ReInit().

◆ SetProfileStart()

void CbmTrdCluster::SetProfileStart ( Bool_t  set = kTRUE)
inline

Definition at line 99 of file CbmTrdCluster.h.

References fNRows, and kProfileStart.

Referenced by CbmTrdModuleRecT::AddDigi(), AddDigi(), Merge(), and ReInit().

◆ SetProfileStop()

void CbmTrdCluster::SetProfileStop ( Bool_t  set = kTRUE)
inline

Definition at line 102 of file CbmTrdCluster.h.

References fNRows, and kProfileStop.

Referenced by CbmTrdModuleRecT::AddDigi(), AddDigi(), Merge(), and ReInit().

◆ SetTrianglePads()

void CbmTrdCluster::SetTrianglePads ( Bool_t  set = kTRUE)
inline

◆ ToString()

string CbmTrdCluster::ToString ( ) const
virtual

Member Data Documentation

◆ fAddress

Int_t CbmCluster::fAddress
privateinherited

Unique detector ID.

Definition at line 105 of file CbmCluster.h.

Referenced by CbmCluster::GetAddress(), CbmCluster::operator=(), CbmCluster::SetAddress(), and CbmCluster::ToString().

◆ fDigis

◆ fMatch

CbmMatch* CbmCluster::fMatch
privateinherited

link to Monte-Carlo information

Definition at line 106 of file CbmCluster.h.

Referenced by CbmCluster::CbmCluster(), CbmCluster::GetMatch(), CbmCluster::operator=(), and CbmCluster::SetMatch().

◆ fNCols

UChar_t CbmTrdCluster::fNCols
protected

◆ fNRows

UChar_t CbmTrdCluster::fNRows
protected

◆ fStartCh

UShort_t CbmTrdCluster::fStartCh
protected

◆ fStartTime

UShort_t CbmTrdCluster::fStartTime
protected

channel address of first channel

Definition at line 114 of file CbmTrdCluster.h.

Referenced by AddDigi(), Clear(), GetStartTime(), Merge(), ReInit(), and ToString().


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