Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
FPGATrackSimCluster.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRIGFPGATrackSimOBJECTS_FPGATrackSimCLUSTER_H
6 #define TRIGFPGATrackSimOBJECTS_FPGATrackSimCLUSTER_H
7 
8 /*
9  * FPGATrackSimCluster.h: This file declares the class used to represent clusters.
10  * Declarations in this file:
11  * class FPGATrackSimCluster
12  * Author: Alex Martyniuk
13  * Email: martyniu@cern.ch
14  */
15 
17 
18  /*
19  * Clusters resulting from FPGATrackSim clustering algorithms as stored in m_clusterEquiv as a FPGATrackSimHit
20  * The raw hits used to form this cluster are stored in the m_hitlist, the first entry is the seed that initiated this cluster.
21  */
22 typedef std::vector<FPGATrackSimHit> hitVector;
24 {
25 public:
26  FPGATrackSimCluster() = default;
27  virtual ~FPGATrackSimCluster() = default;
28 
29  // get private members
30  hitVector const& getHitList() const { return m_hitlist; }
31  FPGATrackSimHit const& getClusterEquiv() const { return m_clusterEquiv; }
32 
33  // set private members
36 
37  // filling functions
39  m_hitlist.push_back(input);
40  m_clusterEquiv.addIDHashToVec(input.getIdentifierHash());
41  m_clusterEquiv.addPhiIndexToVec(input.getPhiIndex());
42  m_clusterEquiv.addEtaIndexToVec(input.getEtaIndex());
43  }
44 
45 private:
46  hitVector m_hitlist; // list of hits that make the cluster, the seed of the cluster will be the first entry in this list.
47  FPGATrackSimHit m_clusterEquiv; // This is the cluster
48 
50 };
51 
52 std::ostream& operator<<(std::ostream& o, const FPGATrackSimCluster& cluster);
53 
54 
55 #endif // FPGATrackSimCLUSTER_H
FPGATrackSimCluster::getHitList
hitVector const & getHitList() const
Definition: FPGATrackSimCluster.h:30
FPGATrackSimCluster
Definition: FPGATrackSimCluster.h:24
operator<<
std::ostream & operator<<(std::ostream &o, const FPGATrackSimCluster &cluster)
Definition: FPGATrackSimCluster.cxx:7
FPGATrackSimCluster::m_hitlist
hitVector m_hitlist
Definition: FPGATrackSimCluster.h:46
hitVector
std::vector< FPGATrackSimHit > hitVector
Definition: FPGATrackSimCluster.h:22
FPGATrackSimHit::addEtaIndexToVec
void addEtaIndexToVec(int eta)
Definition: FPGATrackSimHit.h:193
FPGATrackSimCluster::setClusterEquiv
void setClusterEquiv(const FPGATrackSimHit &input)
Definition: FPGATrackSimCluster.h:35
FPGATrackSimCluster::~FPGATrackSimCluster
virtual ~FPGATrackSimCluster()=default
FPGATrackSimHit
Definition: FPGATrackSimHit.h:41
FPGATrackSimCluster::ClassDefNV
ClassDefNV(FPGATrackSimCluster, 4)
PlotPulseshapeFromCool.input
input
Definition: PlotPulseshapeFromCool.py:106
FPGATrackSimHit::addIDHashToVec
void addIDHashToVec(unsigned id)
Definition: FPGATrackSimHit.h:194
FPGATrackSimCluster::m_clusterEquiv
FPGATrackSimHit m_clusterEquiv
Definition: FPGATrackSimCluster.h:47
FPGATrackSimCluster::getClusterEquiv
FPGATrackSimHit const & getClusterEquiv() const
Definition: FPGATrackSimCluster.h:31
FPGATrackSimHit.h
: FPGATrackSim-specific class to represent an hit in the detector.
FPGATrackSimCluster::setHitList
void setHitList(const hitVector &input)
Definition: FPGATrackSimCluster.h:34
FPGATrackSimCluster::FPGATrackSimCluster
FPGATrackSimCluster()=default
FPGATrackSimHit::addPhiIndexToVec
void addPhiIndexToVec(int phi)
Definition: FPGATrackSimHit.h:192
FPGATrackSimCluster::push_backHitList
void push_backHitList(const FPGATrackSimHit &input)
Definition: FPGATrackSimCluster.h:38