ATLAS Offline Software
Loading...
Searching...
No Matches
PixelCluster_v1.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef XAODINDETMEASUREMENT_VERSION_PIXELCLUSTER_V1_H
6#define XAODINDETMEASUREMENT_VERSION_PIXELCLUSTER_V1_H
7
9#include "Identifier/Identifier.h"
14
15namespace xAOD {
16
19
21
22 public:
24 PixelCluster_v1() = default;
26 virtual ~PixelCluster_v1() = default;
27
30
35 unsigned int numDimensions() const override final { return 2; }
36
40
43 rdoList() const;
44
47 int channelsInPhi() const;
48 int channelsInEta() const;
49
52 float widthInEta() const;
53
56 totList() const;
57
60 chargeList() const;
61
63 float energyLoss() const;
64
66 int lvl1a() const;
67
69
72
74 void setRDOlist(const std::vector<Identifier>& rdolist);
75
77 void setRDOlist(std::vector<Identifier::value_type>&& rdolist);
78
80 void setRDOlist(std::span<Identifier::value_type> rdolist);
81
85
88
90 void setToTlist(const std::vector<int>& tots);
91 void setToTlist(std::span<int> tots);
92
94 void setChargelist(const std::vector<float>& charges);
95 void setChargelist(std::span<float> charges);
96
98 void setEnergyLoss(float dEdX);
99
101 void setLVL1A(int lvl1a);
102
103 static const SG::AuxElement::Accessor<SG::JaggedVecElt<Identifier::value_type> > rdoListAcc() { return s_rdoListAcc; }
104 static const SG::AuxElement::Accessor<SG::JaggedVecElt<int> > totListAcc() { return s_totListAcc; }
105 static const SG::AuxElement::Accessor<SG::JaggedVecElt<float> > chargeListAcc() { return s_chargeListAcc; }
107protected:
108 static const SG::AuxElement::Accessor<SG::JaggedVecElt<Identifier::value_type> > s_rdoListAcc;
109 static const SG::AuxElement::Accessor<SG::JaggedVecElt<int> > s_totListAcc;
110 static const SG::AuxElement::Accessor<SG::JaggedVecElt<float> > s_chargeListAcc;
111public:
114
138
140};
141
142inline
145 return s_rdoListAcc(*this);
146}
147
148inline
151 return s_totListAcc(*this);
152}
153
154inline
157 return s_chargeListAcc(*this);
158}
159
160} // namespace xAOD
163#endif
An STL vector of pointers that by default owns its pointed-to elements.
#define DATAVECTOR_BASE(T, BASE)
Declare base class info to DataVector.
Definition DataVector.h:649
Helper class to provide type-safe access to aux data, specialized for JaggedVecElt.
Define structures for fast filling of xAOD objects.
Manage lookup of vectors of auxiliary data.
Helper class to provide constant type-safe access to aux data.
Class describing HGTD clusters.
SG::ConstAccessor< SG::JaggedVecElt< Identifier::value_type > >::element_type rdoList() const
Returns the list of identifiers of the channels building the cluster.
xAOD::UncalibMeasType type() const override final
Returns the type of the pixel cluster as a simple enumeration.
virtual ~PixelCluster_v1()=default
Virtual destructor.
void setChannelsInPhiEta(int channelsInPhi, int channelsInEta)
Sets the dimensions of the cluster in numbers of channels in phi (x) and eta (y) directions.
int channelsInPhi() const
Returns the dimensions of the cluster in numbers of channels in phi (x) and eta (y) directions,...
float energyLoss() const
Return the energy loss in the cluster in MeV.
ConstVectorMap< 3 > globalPosition() const
Returns the global position of the pixel cluster.
SG::ConstAccessor< SG::JaggedVecElt< float > >::element_type chargeList() const
Returns the list of charges of the channels building the cluster.
static const SG::AuxElement::Accessor< SG::JaggedVecElt< int > > s_totListAcc
int lvl1a() const
Return the LVL1 accept.
void setChargelist(const std::vector< float > &charges)
Sets the list of charges of the channels building the cluster.
SG::ConstAccessor< SG::JaggedVecElt< int > >::element_type totList() const
Returns the list of ToT of the channels building the cluster.
int channelsInEta() const
static const SG::AuxElement::Accessor< SG::JaggedVecElt< int > > totListAcc()
float widthInEta() const
Returns the width of the cluster in phi (x) and eta (y) directions, respectively.
void setToTlist(const std::vector< int > &tots)
Sets the list of ToT of the channels building the cluster.
PixelCluster_v1()=default
Default constructor.
static const SG::AuxElement::Accessor< SG::JaggedVecElt< float > > s_chargeListAcc
static const SG::AuxElement::Accessor< SG::JaggedVecElt< Identifier::value_type > > rdoListAcc()
void setEnergyLoss(float dEdX)
Sets the energy loss in the cluster in MeV.
void setLVL1A(int lvl1a)
Sets the LVL1 accept.
static const SG::AuxElement::Accessor< SG::JaggedVecElt< float > > chargeListAcc()
static const SG::AuxElement::Accessor< SG::JaggedVecElt< Identifier::value_type > > s_rdoListAcc
void setRDOlist(const std::vector< Identifier > &rdolist)
Sets the list of identifiers of the channels building the cluster.
void setWidthInEta(float widthInEta)
Sets the width of the cluster in eta (y) direction.
unsigned int numDimensions() const override final
Returns the number of dimensions of the measurement.
UncalibratedMeasurement_v1()=default
Default constructor.
DetectorIDHashType identifierHash() const
Returns the IdentifierHash of the measurement (corresponds to the detector element IdentifierHash).
DetectorIdentType identifier() const
Returns the full Identifier of the measurement.
Define structures for fast filling of xAOD objects.
VariableStruct(SG::AuxVectorData &cont)
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
SG::AuxElement::Accessor< std::array< float, N > > PosAccessor
xAOD Accessor to the position
Eigen::Map< MeasVector< N > > VectorMap
long unsigned int DetectorIdentType
UncalibMeasType
Define the type of the uncalibrated measurement.
SG::AuxElement::Accessor< std::array< float, N *N > > CovAccessor
xAOD Accessor to the covariance
unsigned int DetectorIDHashType
@ detector ID element hash
Eigen::Map< const MeasVector< N > > ConstVectorMap
xAOD::xAODInDetMeasurement::Utilities::JaggedVecEltCache< float > chargeList
xAOD::xAODInDetMeasurement::Utilities::JaggedVecEltCache< int > totList
ClusterVars(SG::AuxVectorData &cont, unsigned int n_cluster_rdos)
AUXSTORE_VARSTRUCT_VAR(xAOD::PosAccessor< 2 >::element_type, localPositionDim2)
AUXSTORE_VARSTRUCT_VAR(xAOD::DetectorIdentType, identifier)
AUXSTORE_VARSTRUCT_VAR(xAOD::PosAccessor< 3 >::element_type, globalPosition)
AUXSTORE_VARSTRUCT_VAR(xAOD::DetectorIDHashType, identifierHash)
AUXSTORE_VARSTRUCT_VAR(int, channelsInPhi)
AUXSTORE_VARSTRUCT_VAR(float, widthInEta)
AUXSTORE_VARSTRUCT_VAR(int, channelsInEta)
xAOD::xAODInDetMeasurement::Utilities::JaggedVecEltCache< Identifier::value_type > rdoList
AUXSTORE_VARSTRUCT_VAR(xAOD::CovAccessor< 2 >::element_type, localCovarianceDim2)