EDM4eic
EIC data model
Loading...
Searching...
No Matches
MutableCluster.h
Go to the documentation of this file.
1// AUTOMATICALLY GENERATED FILE - DO NOT EDIT
2
3#ifndef EDM4EIC_MutableCluster_H
4#define EDM4EIC_MutableCluster_H
5
7// Make the immutable class available from its mutable version but not vice versa
8#include "edm4eic/Cluster.h"
9
11#include "edm4eic/Cov2f.h"
12#include "edm4eic/Cov3f.h"
13#include "edm4hep/ParticleID.h"
14#include "edm4hep/Vector3f.h"
15#include "podio/RelationRange.h"
16#include <array>
17#include <cstdint>
18#include <vector>
19
20#include "podio/utilities/MaybeSharedPtr.h"
21
22#include <cstdint>
23
24#if defined(PODIO_JSON_OUTPUT) && !defined(__CLING__)
25#include "nlohmann/json_fwd.hpp"
26#endif
27
28// forward declarations
29namespace edm4eic {
31}
32
33
34namespace edm4eic {
35
36
37/** @class MutableCluster
38 * EIC hit cluster, reworked to more closely resemble EDM4hep
39 * @author: W. Armstrong, S. Joosten, C.Peng
40 */
42
43 friend class ClusterCollection;
45 friend class Cluster;
46
47public:
50
51 /// default constructor
52 MutableCluster() = default;
53
54 /// Constructor initializing all members
55 MutableCluster(const std::int32_t type, const float energy, const float energyError, const float time, const float timeError, const std::uint32_t nhits, const edm4hep::Vector3f& position, const edm4eic::Cov3f& positionError, const float radius, const float dispersion, const std::array<float, 3>& principalAxesLengthsXYZ, const std::array<float, 2>& principalAxesLengthsThetaPhi, const float intrinsicTheta, const float intrinsicPhi, const edm4eic::Cov2f& intrinsicDirectionError);
56
57 /// copy constructor
58 MutableCluster(const MutableCluster& other) = default;
59
60 /// copy-assignment operator
61 MutableCluster& operator=(MutableCluster other) &; // Rebind this to other's internal object
62 MutableCluster& operator=(MutableCluster other) && = delete; // Prevent rebinding temporary as the changes wouldn't persist
63
64 /// create a mutable deep-copy of the object with identical relations
65 /// if cloneRelations=false, the relations are not cloned and will be empty
66 MutableCluster clone(bool cloneRelations=true) const;
67
68 /// destructor
69 ~MutableCluster() = default;
70
71
72public:
73
74 /// Access the Flag-word that defines the type of the cluster
75 std::int32_t getType() const;
76
77 /// Access the Reconstructed energy of the cluster [GeV].
78 float getEnergy() const;
79
80 /// Access the Error on the cluster energy [GeV]
81 float getEnergyError() const;
82
83 /// Access the [ns]
84 float getTime() const;
85
86 /// Access the Error on the cluster time
87 float getTimeError() const;
88
89 /// Access the Number of hits in the cluster.
90 std::uint32_t getNhits() const;
91
92 /// Access the Global position of the cluster [mm].
93 const edm4hep::Vector3f& getPosition() const;
94
95 /// Access the Covariance matrix of the position (6 Parameters).
96 const edm4eic::Cov3f& getPositionError() const;
97
98 /// Access the Cluster radius [mm].
99 float getRadius() const;
100
101 /// Access the Cluster dispersion [mm].
102 float getDispersion() const;
103
104 /// Access the Lengths along the cluster's principal axes [mm], sorted in descending order (equivalent to sqrt of eigenvalues of the position covariance). For an XY planar detector one can expect this to be [sigma_max, sigma_min, 0].
105 const std::array<float, 3>& getPrincipalAxesLengthsXYZ() const;
106 /// Access item i of the Lengths along the cluster's principal axes [mm], sorted in descending order (equivalent to sqrt of eigenvalues of the position covariance). For an XY planar detector one can expect this to be [sigma_max, sigma_min, 0].
107 float getPrincipalAxesLengthsXYZ(size_t i) const;
108 /// Access the Lengths along the cluster's principal axes [rad], sorted in descending order.
109 const std::array<float, 2>& getPrincipalAxesLengthsThetaPhi() const;
110 /// Access item i of the Lengths along the cluster's principal axes [rad], sorted in descending order.
111 float getPrincipalAxesLengthsThetaPhi(size_t i) const;
112 /// Access the Intrinsic cluster propagation direction polar angle [rad].
113 float getIntrinsicTheta() const;
114
115 /// Access the Intrinsic cluster propagation direction azimuthal angle [rad]. For an XY planar detector one can expect this to be the tilt of "sigma_max" axis.
116 float getIntrinsicPhi() const;
117
118 /// Access the Error on the intrinsic cluster propagation direction
120
121
122
123 /// Set the Flag-word that defines the type of the cluster
124 void setType(const std::int32_t type);
125 /// Get mutable reference to Flag-word that defines the type of the cluster
126 std::int32_t& getType();
127 /// Get reference to Flag-word that defines the type of the cluster
128 [[deprecated("use getType instead")]]
129 std::int32_t& type();
130
131 /// Set the Reconstructed energy of the cluster [GeV].
132 void setEnergy(const float energy);
133 /// Get mutable reference to Reconstructed energy of the cluster [GeV].
134 float& getEnergy();
135 /// Get reference to Reconstructed energy of the cluster [GeV].
136 [[deprecated("use getEnergy instead")]]
137 float& energy();
138
139 /// Set the Error on the cluster energy [GeV]
140 void setEnergyError(const float energyError);
141 /// Get mutable reference to Error on the cluster energy [GeV]
142 float& getEnergyError();
143 /// Get reference to Error on the cluster energy [GeV]
144 [[deprecated("use getEnergyError instead")]]
145 float& energyError();
146
147 /// Set the [ns]
148 void setTime(const float time);
149 /// Get mutable reference to [ns]
150 float& getTime();
151 /// Get reference to [ns]
152 [[deprecated("use getTime instead")]]
153 float& time();
154
155 /// Set the Error on the cluster time
156 void setTimeError(const float timeError);
157 /// Get mutable reference to Error on the cluster time
158 float& getTimeError();
159 /// Get reference to Error on the cluster time
160 [[deprecated("use getTimeError instead")]]
161 float& timeError();
162
163 /// Set the Number of hits in the cluster.
164 void setNhits(const std::uint32_t nhits);
165 /// Get mutable reference to Number of hits in the cluster.
166 std::uint32_t& getNhits();
167 /// Get reference to Number of hits in the cluster.
168 [[deprecated("use getNhits instead")]]
169 std::uint32_t& nhits();
170
171 /// Set the Global position of the cluster [mm].
172 void setPosition(const edm4hep::Vector3f& position);
173 /// Get mutable reference to Global position of the cluster [mm].
174 edm4hep::Vector3f& getPosition();
175 /// Get reference to Global position of the cluster [mm].
176 [[deprecated("use getPosition instead")]]
177 edm4hep::Vector3f& position();
178
179 /// Set the Covariance matrix of the position (6 Parameters).
181 /// Get mutable reference to Covariance matrix of the position (6 Parameters).
183 /// Get reference to Covariance matrix of the position (6 Parameters).
184 [[deprecated("use getPositionError instead")]]
186
187 /// Set the Cluster radius [mm].
188 void setRadius(const float radius);
189 /// Get mutable reference to Cluster radius [mm].
190 float& getRadius();
191 /// Get reference to Cluster radius [mm].
192 [[deprecated("use getRadius instead")]]
193 float& radius();
194
195 /// Set the Cluster dispersion [mm].
196 void setDispersion(const float dispersion);
197 /// Get mutable reference to Cluster dispersion [mm].
198 float& getDispersion();
199 /// Get reference to Cluster dispersion [mm].
200 [[deprecated("use getDispersion instead")]]
201 float& dispersion();
202
203 /// Set the Lengths along the cluster's principal axes [mm], sorted in descending order (equivalent to sqrt of eigenvalues of the position covariance). For an XY planar detector one can expect this to be [sigma_max, sigma_min, 0].
204 void setPrincipalAxesLengthsXYZ(const std::array<float, 3>& principalAxesLengthsXYZ);
205 void setPrincipalAxesLengthsXYZ(size_t i, float value);
206 /// Get mutable reference to Lengths along the cluster's principal axes [mm], sorted in descending order (equivalent to sqrt of eigenvalues of the position covariance). For an XY planar detector one can expect this to be [sigma_max, sigma_min, 0].
207 std::array<float, 3>& getPrincipalAxesLengthsXYZ();
208 /// Get reference to Lengths along the cluster's principal axes [mm], sorted in descending order (equivalent to sqrt of eigenvalues of the position covariance). For an XY planar detector one can expect this to be [sigma_max, sigma_min, 0].
209 [[deprecated("use getPrincipalAxesLengthsXYZ instead")]]
210 std::array<float, 3>& principalAxesLengthsXYZ();
211
212 /// Set the Lengths along the cluster's principal axes [rad], sorted in descending order.
213 void setPrincipalAxesLengthsThetaPhi(const std::array<float, 2>& principalAxesLengthsThetaPhi);
214 void setPrincipalAxesLengthsThetaPhi(size_t i, float value);
215 /// Get mutable reference to Lengths along the cluster's principal axes [rad], sorted in descending order.
216 std::array<float, 2>& getPrincipalAxesLengthsThetaPhi();
217 /// Get reference to Lengths along the cluster's principal axes [rad], sorted in descending order.
218 [[deprecated("use getPrincipalAxesLengthsThetaPhi instead")]]
219 std::array<float, 2>& principalAxesLengthsThetaPhi();
220
221 /// Set the Intrinsic cluster propagation direction polar angle [rad].
222 void setIntrinsicTheta(const float intrinsicTheta);
223 /// Get mutable reference to Intrinsic cluster propagation direction polar angle [rad].
224 float& getIntrinsicTheta();
225 /// Get reference to Intrinsic cluster propagation direction polar angle [rad].
226 [[deprecated("use getIntrinsicTheta instead")]]
227 float& intrinsicTheta();
228
229 /// Set the Intrinsic cluster propagation direction azimuthal angle [rad]. For an XY planar detector one can expect this to be the tilt of "sigma_max" axis.
230 void setIntrinsicPhi(const float intrinsicPhi);
231 /// Get mutable reference to Intrinsic cluster propagation direction azimuthal angle [rad]. For an XY planar detector one can expect this to be the tilt of "sigma_max" axis.
232 float& getIntrinsicPhi();
233 /// Get reference to Intrinsic cluster propagation direction azimuthal angle [rad]. For an XY planar detector one can expect this to be the tilt of "sigma_max" axis.
234 [[deprecated("use getIntrinsicPhi instead")]]
235 float& intrinsicPhi();
236
237 /// Set the Error on the intrinsic cluster propagation direction
239 /// Get mutable reference to Error on the intrinsic cluster propagation direction
241 /// Get reference to Error on the intrinsic cluster propagation direction
242 [[deprecated("use getIntrinsicDirectionError instead")]]
244
245
246
247 void addToClusters(const edm4eic::Cluster&);
248 std::size_t clusters_size() const;
249 edm4eic::Cluster getClusters(std::size_t) const;
250 std::vector<edm4eic::Cluster>::const_iterator clusters_begin() const;
251 std::vector<edm4eic::Cluster>::const_iterator clusters_end() const;
252 podio::RelationRange<edm4eic::Cluster> getClusters() const;
254 std::size_t hits_size() const;
255 edm4eic::CalorimeterHit getHits(std::size_t) const;
256 std::vector<edm4eic::CalorimeterHit>::const_iterator hits_begin() const;
257 std::vector<edm4eic::CalorimeterHit>::const_iterator hits_end() const;
258 podio::RelationRange<edm4eic::CalorimeterHit> getHits() const;
259 void addToParticleIDs(const edm4hep::ParticleID&);
260 std::size_t particleIDs_size() const;
261 edm4hep::ParticleID getParticleIDs(std::size_t) const;
262 std::vector<edm4hep::ParticleID>::const_iterator particleIDs_begin() const;
263 std::vector<edm4hep::ParticleID>::const_iterator particleIDs_end() const;
264 podio::RelationRange<edm4hep::ParticleID> getParticleIDs() const;
265 void addToShapeParameters(const float&);
266 std::size_t shapeParameters_size() const;
267 float getShapeParameters(std::size_t) const;
268 std::vector<float>::const_iterator shapeParameters_begin() const;
269 std::vector<float>::const_iterator shapeParameters_end() const;
270 podio::RelationRange<float> getShapeParameters() const;
271 void addToHitContributions(const float&);
272 std::size_t hitContributions_size() const;
273 float getHitContributions(std::size_t) const;
274 std::vector<float>::const_iterator hitContributions_begin() const;
275 std::vector<float>::const_iterator hitContributions_end() const;
276 podio::RelationRange<float> getHitContributions() const;
277 void addToSubdetectorEnergies(const float&);
278 std::size_t subdetectorEnergies_size() const;
279 float getSubdetectorEnergies(std::size_t) const;
280 std::vector<float>::const_iterator subdetectorEnergies_begin() const;
281 std::vector<float>::const_iterator subdetectorEnergies_end() const;
282 podio::RelationRange<float> getSubdetectorEnergies() const;
283
284
285
286 /// check whether the object is actually available
287 bool isAvailable() const;
288 /// disconnect from ClusterObj instance
289 void unlink() { m_obj = podio::utils::MaybeSharedPtr<ClusterObj>{nullptr}; }
290
291 bool operator==(const MutableCluster& other) const { return m_obj == other.m_obj; }
292 bool operator==(const Cluster& other) const;
293
294 bool operator!=(const MutableCluster& other) const { return !(*this == other); }
295 bool operator!=(const Cluster& other) const { return !(*this == other); }
296
297 // less comparison operator, so that objects can be e.g. stored in sets.
298 bool operator<(const MutableCluster& other) const { return podio::detail::getOrderKey(*this) < podio::detail::getOrderKey(other); }
299
300 podio::ObjectID id() const { return getObjectID(); }
301
302 const podio::ObjectID getObjectID() const;
303
304 friend std::hash<MutableCluster>;
305
306 friend void swap(MutableCluster& a, MutableCluster& b) {
307 using std::swap;
308 swap(a.m_obj, b.m_obj); // swap out the internal pointers
309 }
310
311private:
312 /// constructor from existing ClusterObj
313 explicit MutableCluster(podio::utils::MaybeSharedPtr<ClusterObj> obj);
314
315 podio::utils::MaybeSharedPtr<ClusterObj> m_obj{new ClusterObj{}, podio::utils::MarkOwned};
316};
317
318#if defined(PODIO_JSON_OUTPUT) && !defined(__CLING__)
319void to_json(nlohmann::json& j, const MutableCluster& value);
320#endif
321
322
323} // namespace edm4eic
324
325
326
327template<>
328struct std::hash<edm4eic::MutableCluster> {
329 std::size_t operator()(const edm4eic::MutableCluster& obj) const {
330 return std::hash<edm4eic::ClusterObj*>{}(obj.m_obj.get());
331 }
332};
333
334
335#endif
Definition CalorimeterHit.h:46
Definition ClusterCollection.h:138
Definition Cluster.h:49
Definition ClusterObj.h:21
Definition Cov2f.h:19
Definition Cov3f.h:19
Definition MutableCluster.h:41
Cluster object_type
Definition MutableCluster.h:48
const edm4hep::Vector3f & getPosition() const
Access the Global position of the cluster [mm].
Definition MutableCluster.cc:75
podio::RelationRange< float > getSubdetectorEnergies() const
Definition MutableCluster.cc:345
std::vector< edm4hep::ParticleID >::const_iterator particleIDs_begin() const
Definition MutableCluster.cc:214
friend class Cluster
Definition MutableCluster.h:45
float getTime() const
Access the [ns].
Definition MutableCluster.cc:72
float & dispersion()
Get reference to Cluster dispersion [mm].
Definition MutableCluster.cc:117
void addToShapeParameters(const float &)
Definition MutableCluster.cc:245
podio::RelationRange< edm4eic::CalorimeterHit > getHits() const
Definition MutableCluster.cc:201
std::vector< edm4eic::CalorimeterHit >::const_iterator hits_end() const
Definition MutableCluster.cc:184
podio::ObjectID id() const
Definition MutableCluster.h:300
void setPosition(const edm4hep::Vector3f &position)
Set the Global position of the cluster [mm].
Definition MutableCluster.cc:106
ClusterCollection collection_type
Definition MutableCluster.h:49
std::vector< edm4eic::CalorimeterHit >::const_iterator hits_begin() const
Definition MutableCluster.cc:178
float getRadius() const
Access the Cluster radius [mm].
Definition MutableCluster.cc:77
MutableCluster()=default
default constructor
std::array< float, 3 > & principalAxesLengthsXYZ()
Get reference to Lengths along the cluster's principal axes [mm], sorted in descending order (equival...
Definition MutableCluster.cc:121
float & radius()
Get reference to Cluster radius [mm].
Definition MutableCluster.cc:114
void addToParticleIDs(const edm4hep::ParticleID &)
Definition MutableCluster.cc:209
void setIntrinsicPhi(const float intrinsicPhi)
Set the Intrinsic cluster propagation direction azimuthal angle [rad]. For an XY planar detector one ...
Definition MutableCluster.cc:129
void setType(const std::int32_t type)
Set the Flag-word that defines the type of the cluster.
Definition MutableCluster.cc:88
float getTimeError() const
Access the Error on the cluster time.
Definition MutableCluster.cc:73
void unlink()
disconnect from ClusterObj instance
Definition MutableCluster.h:289
float getEnergyError() const
Access the Error on the cluster energy [GeV].
Definition MutableCluster.cc:71
bool operator!=(const Cluster &other) const
Definition MutableCluster.h:295
const edm4eic::Cov2f & getIntrinsicDirectionError() const
Access the Error on the intrinsic cluster propagation direction.
Definition MutableCluster.cc:85
bool isAvailable() const
check whether the object is actually available
Definition MutableCluster.cc:358
MutableCluster(const MutableCluster &other)=default
copy constructor
bool operator<(const MutableCluster &other) const
Definition MutableCluster.h:298
void setPrincipalAxesLengthsThetaPhi(const std::array< float, 2 > &principalAxesLengthsThetaPhi)
Set the Lengths along the cluster's principal axes [rad], sorted in descending order.
Definition MutableCluster.cc:122
std::size_t particleIDs_size() const
Definition MutableCluster.cc:226
const std::array< float, 3 > & getPrincipalAxesLengthsXYZ() const
Access the Lengths along the cluster's principal axes [mm], sorted in descending order (equivalent to...
Definition MutableCluster.cc:79
void setPositionError(const edm4eic::Cov3f &positionError)
Set the Covariance matrix of the position (6 Parameters).
Definition MutableCluster.cc:109
edm4eic::Cov2f & intrinsicDirectionError()
Get reference to Error on the intrinsic cluster propagation direction.
Definition MutableCluster.cc:134
std::array< float, 2 > & principalAxesLengthsThetaPhi()
Get reference to Lengths along the cluster's principal axes [rad], sorted in descending order.
Definition MutableCluster.cc:125
std::size_t hits_size() const
Definition MutableCluster.cc:190
std::vector< edm4hep::ParticleID >::const_iterator particleIDs_end() const
Definition MutableCluster.cc:220
bool operator!=(const MutableCluster &other) const
Definition MutableCluster.h:294
MutableCluster & operator=(MutableCluster other) &&=delete
float & intrinsicTheta()
Get reference to Intrinsic cluster propagation direction polar angle [rad].
Definition MutableCluster.cc:128
float getIntrinsicTheta() const
Access the Intrinsic cluster propagation direction polar angle [rad].
Definition MutableCluster.cc:83
void addToHits(const edm4eic::CalorimeterHit &)
Definition MutableCluster.cc:173
std::int32_t & type()
Get reference to Flag-word that defines the type of the cluster.
Definition MutableCluster.cc:90
friend void swap(MutableCluster &a, MutableCluster &b)
Definition MutableCluster.h:306
podio::RelationRange< edm4hep::ParticleID > getParticleIDs() const
Definition MutableCluster.cc:237
void setTimeError(const float timeError)
Set the Error on the cluster time.
Definition MutableCluster.cc:100
MutableCluster & operator=(MutableCluster other) &
copy-assignment operator
Definition MutableCluster.cc:36
std::vector< edm4eic::Cluster >::const_iterator clusters_end() const
Definition MutableCluster.cc:148
friend class ClusterCollection
Definition MutableCluster.h:43
edm4eic::Cov3f & positionError()
Get reference to Covariance matrix of the position (6 Parameters).
Definition MutableCluster.cc:111
float & energyError()
Get reference to Error on the cluster energy [GeV].
Definition MutableCluster.cc:96
void setTime(const float time)
Set the [ns].
Definition MutableCluster.cc:97
const std::array< float, 2 > & getPrincipalAxesLengthsThetaPhi() const
Access the Lengths along the cluster's principal axes [rad], sorted in descending order.
Definition MutableCluster.cc:81
void setIntrinsicTheta(const float intrinsicTheta)
Set the Intrinsic cluster propagation direction polar angle [rad].
Definition MutableCluster.cc:126
std::int32_t getType() const
Access the Flag-word that defines the type of the cluster.
Definition MutableCluster.cc:69
float & intrinsicPhi()
Get reference to Intrinsic cluster propagation direction azimuthal angle [rad]. For an XY planar dete...
Definition MutableCluster.cc:131
void setPrincipalAxesLengthsXYZ(const std::array< float, 3 > &principalAxesLengthsXYZ)
Set the Lengths along the cluster's principal axes [mm], sorted in descending order (equivalent to sq...
Definition MutableCluster.cc:118
void addToSubdetectorEnergies(const float &)
Definition MutableCluster.cc:317
std::vector< float >::const_iterator hitContributions_begin() const
Definition MutableCluster.cc:286
std::vector< float >::const_iterator subdetectorEnergies_begin() const
Definition MutableCluster.cc:322
std::uint32_t getNhits() const
Access the Number of hits in the cluster.
Definition MutableCluster.cc:74
edm4hep::Vector3f & position()
Get reference to Global position of the cluster [mm].
Definition MutableCluster.cc:108
std::size_t clusters_size() const
Definition MutableCluster.cc:154
void addToHitContributions(const float &)
Definition MutableCluster.cc:281
std::size_t hitContributions_size() const
Definition MutableCluster.cc:298
bool operator==(const MutableCluster &other) const
Definition MutableCluster.h:291
~MutableCluster()=default
destructor
friend class ClusterMutableCollectionIterator
Definition MutableCluster.h:44
std::vector< edm4eic::Cluster >::const_iterator clusters_begin() const
Definition MutableCluster.cc:142
float getEnergy() const
Access the Reconstructed energy of the cluster [GeV].
Definition MutableCluster.cc:70
void setIntrinsicDirectionError(const edm4eic::Cov2f &intrinsicDirectionError)
Set the Error on the intrinsic cluster propagation direction.
Definition MutableCluster.cc:132
std::size_t shapeParameters_size() const
Definition MutableCluster.cc:262
const edm4eic::Cov3f & getPositionError() const
Access the Covariance matrix of the position (6 Parameters).
Definition MutableCluster.cc:76
MutableCluster clone(bool cloneRelations=true) const
Definition MutableCluster.cc:41
void setRadius(const float radius)
Set the Cluster radius [mm].
Definition MutableCluster.cc:112
float & energy()
Get reference to Reconstructed energy of the cluster [GeV].
Definition MutableCluster.cc:93
std::vector< float >::const_iterator shapeParameters_end() const
Definition MutableCluster.cc:256
const podio::ObjectID getObjectID() const
Definition MutableCluster.cc:362
void setDispersion(const float dispersion)
Set the Cluster dispersion [mm].
Definition MutableCluster.cc:115
podio::RelationRange< edm4eic::Cluster > getClusters() const
Definition MutableCluster.cc:165
podio::RelationRange< float > getHitContributions() const
Definition MutableCluster.cc:309
void setNhits(const std::uint32_t nhits)
Set the Number of hits in the cluster.
Definition MutableCluster.cc:103
void addToClusters(const edm4eic::Cluster &)
Definition MutableCluster.cc:137
float getIntrinsicPhi() const
Access the Intrinsic cluster propagation direction azimuthal angle [rad]. For an XY planar detector o...
Definition MutableCluster.cc:84
std::vector< float >::const_iterator subdetectorEnergies_end() const
Definition MutableCluster.cc:328
float getDispersion() const
Access the Cluster dispersion [mm].
Definition MutableCluster.cc:78
std::uint32_t & nhits()
Get reference to Number of hits in the cluster.
Definition MutableCluster.cc:105
std::vector< float >::const_iterator hitContributions_end() const
Definition MutableCluster.cc:292
void setEnergy(const float energy)
Set the Reconstructed energy of the cluster [GeV].
Definition MutableCluster.cc:91
void setEnergyError(const float energyError)
Set the Error on the cluster energy [GeV].
Definition MutableCluster.cc:94
float & time()
Get reference to [ns].
Definition MutableCluster.cc:99
float & timeError()
Get reference to Error on the cluster time.
Definition MutableCluster.cc:102
std::vector< float >::const_iterator shapeParameters_begin() const
Definition MutableCluster.cc:250
podio::RelationRange< float > getShapeParameters() const
Definition MutableCluster.cc:273
std::size_t subdetectorEnergies_size() const
Definition MutableCluster.cc:334
Definition CalorimeterHit.cc:17
OrderKey getOrderKey(const edm4eic::CalorimeterHit &obj)
Definition CalorimeterHit.cc:146
std::size_t operator()(const edm4eic::MutableCluster &obj) const
Definition MutableCluster.h:329