Go to the documentation of this file.
3 #ifndef EICD_RawCalorimeterHitCollection_H
4 #define EICD_RawCalorimeterHitCollection_H
12 #include "podio/ICollectionProvider.h"
13 #include "podio/CollectionBase.h"
14 #include "podio/CollectionIDTable.h"
37 return m_index != x.m_index;
59 return m_index != x.m_index;
88 void clear() override final;
98 template<
typename... Args>
102 size_t size() const override final;
105 std::
string getValueTypeName()
const override {
return std::string(
"eic::RawCalorimeterHit"); }
122 void setBuffer(
void* address) override final;
123 bool setReferences(const podio::ICollectionProvider* collectionProvider) override final;
127 podio::VectorMembersInfo*
vectorMembers()
override {
return &m_vecmem_info; }
131 std::for_each(m_entries.begin(),m_entries.end(),
137 unsigned getID() const override final {
138 return m_collectionID;
153 return iterator(m_entries.size(), &m_entries);
163 std::vector<RawCalorimeterHitData>*
_getBuffer() {
return m_data; }
165 template<
size_t arraysize>
166 const std::array<eic::Index, arraysize> ID()
const;
167 template<
size_t arraysize>
168 const std::array<std::int64_t, arraysize> cellID()
const;
169 template<
size_t arraysize>
170 const std::array<std::int64_t, arraysize> amplitude()
const;
171 template<
size_t arraysize>
172 const std::array<std::int64_t, arraysize> time()
const;
175 bool m_isValid{
false};
176 bool m_isReadFromFile{
false};
177 int m_collectionID{0};
184 podio::CollRefCollection m_refCollections{};
185 podio::VectorMembersInfo m_vecmem_info{};
189 std::ostream&
operator<<(std::ostream& o,
const RawCalorimeterHitCollection& v);
191 template<
typename... Args>
193 const int size = m_entries.size();
195 m_entries.push_back(obj);
199 template<
size_t arraysize>
200 const std::array<eic::Index, arraysize> RawCalorimeterHitCollection::ID()
const {
201 std::array<eic::Index, arraysize> tmp;
202 const auto valid_size = std::min(arraysize, m_entries.size());
203 for (
unsigned i = 0; i < valid_size; ++i) {
204 tmp[i] = m_entries[i]->data.ID;
209 template<
size_t arraysize>
210 const std::array<std::int64_t, arraysize> RawCalorimeterHitCollection::cellID()
const {
211 std::array<std::int64_t, arraysize> tmp;
212 const auto valid_size = std::min(arraysize, m_entries.size());
213 for (
unsigned i = 0; i < valid_size; ++i) {
214 tmp[i] = m_entries[i]->data.cellID;
219 template<
size_t arraysize>
220 const std::array<std::int64_t, arraysize> RawCalorimeterHitCollection::amplitude()
const {
221 std::array<std::int64_t, arraysize> tmp;
222 const auto valid_size = std::min(arraysize, m_entries.size());
223 for (
unsigned i = 0; i < valid_size; ++i) {
224 tmp[i] = m_entries[i]->data.amplitude;
229 template<
size_t arraysize>
230 const std::array<std::int64_t, arraysize> RawCalorimeterHitCollection::time()
const {
231 std::array<std::int64_t, arraysize> tmp;
232 const auto valid_size = std::min(arraysize, m_entries.size());
233 for (
unsigned i = 0; i < valid_size; ++i) {
234 tmp[i] = m_entries[i]->data.time;
std::ostream & operator<<(std::ostream &o, const ConstBasicParticle &value)
Definition: BasicParticle.cc:102
podio::VectorMembersInfo * vectorMembers() override
Definition: RawCalorimeterHitCollection.h:127
RawCalorimeterHitConstCollectionIterator(size_t index, const RawCalorimeterHitObjPointerContainer *collection)
Definition: RawCalorimeterHitCollection.h:53
RawCalorimeterHitCollectionIterator(const RawCalorimeterHitCollectionIterator &)=delete
RawCalorimeterHitCollectionIterator & operator++()
Definition: RawCalorimeterHitCollection.cc:116
RawCalorimeterHitCollectionIterator & operator=(const RawCalorimeterHitCollectionIterator &)=delete
void * getBufferAddress() override final
returns the address of the pointer to the data buffer
Definition: RawCalorimeterHitCollection.h:160
iterator end()
Definition: RawCalorimeterHitCollection.h:152
void push_back(ConstRawCalorimeterHit object)
Append object to the collection.
Definition: RawCalorimeterHitCollection.cc:89
std::string getValueTypeName() const override
fully qualified type name of elements - with namespace
Definition: RawCalorimeterHitCollection.h:105
void setBuffer(void *address) override final
Definition: RawCalorimeterHitCollection.cc:101
void clear() override final
Definition: RawCalorimeterHitCollection.cc:50
Definition: RawCalorimeterHit.h:22
RawCalorimeterHitCollectionIterator(size_t index, const RawCalorimeterHitObjPointerContainer *collection)
Definition: RawCalorimeterHitCollection.h:31
RawCalorimeterHitCollection & operator=(const RawCalorimeterHitCollection &)=delete
ConstRawCalorimeterHit operator*()
Definition: RawCalorimeterHitCollection.cc:123
Definition: BasicParticle.cc:13
RawCalorimeterHitConstCollectionIterator & operator=(const RawCalorimeterHitConstCollectionIterator &)=delete
~RawCalorimeterHitCollection()
Definition: RawCalorimeterHitCollection.cc:18
ConstRawCalorimeterHit at(unsigned int index) const
Returns the const object of given index.
Definition: RawCalorimeterHitCollection.cc:27
bool operator!=(const RawCalorimeterHitConstCollectionIterator &x) const
Definition: RawCalorimeterHitCollection.h:58
unsigned getID() const override final
Definition: RawCalorimeterHitCollection.h:137
RawCalorimeterHit create()
Append a new object to the collection, and return this object.
Definition: RawCalorimeterHitCollection.cc:43
podio::CollRefCollection * referenceCollections() override final
Definition: RawCalorimeterHitCollection.h:125
RawCalorimeterHitConstCollectionIterator(const RawCalorimeterHitConstCollectionIterator &)=delete
RawCalorimeterHit * operator->()
Definition: RawCalorimeterHitCollection.cc:111
std::vector< RawCalorimeterHitData > * _getBuffer()
Returns the pointer to the data buffer.
Definition: RawCalorimeterHitCollection.h:163
Definition: RawCalorimeterHitConst.h:20
RawCalorimeterHitConstCollectionIterator & operator++()
Definition: RawCalorimeterHitCollection.cc:133
void prepareAfterRead() override final
Definition: RawCalorimeterHitCollection.cc:69
void prepareForWrite() override final
Definition: RawCalorimeterHitCollection.cc:56
Definition: RawCalorimeterHitCollection.h:29
const_iterator begin() const
Definition: RawCalorimeterHitCollection.h:149
bool operator!=(const RawCalorimeterHitCollectionIterator &x) const
Definition: RawCalorimeterHitCollection.h:36
std::vector< RawCalorimeterHitData > RawCalorimeterHitDataContainer
Definition: RawCalorimeterHitCollection.h:26
size_t size() const override final
number of elements in the collection
Definition: RawCalorimeterHitCollection.cc:39
ConstRawCalorimeterHit operator[](unsigned int index) const
Returns the const object of given index.
Definition: RawCalorimeterHitCollection.cc:23
std::deque< RawCalorimeterHitObj * > RawCalorimeterHitObjPointerContainer
Definition: RawCalorimeterHitCollection.h:27
bool setReferences(const podio::ICollectionProvider *collectionProvider) override final
Definition: RawCalorimeterHitCollection.cc:84
iterator begin()
Definition: RawCalorimeterHitCollection.h:146
bool isValid() const override final
Definition: RawCalorimeterHitCollection.h:141
ConstRawCalorimeterHit * operator->()
Definition: RawCalorimeterHitCollection.cc:128
const std::array< eic::Index, arraysize > ID() const
Definition: RawCalorimeterHitCollection.h:200
RawCalorimeterHitCollection(const RawCalorimeterHitCollection &)=delete
Definition: RawCalorimeterHitCollection.h:51
Definition: RawCalorimeterHitObj.h:18
RawCalorimeterHitCollection()
Definition: RawCalorimeterHitCollection.cc:13
const_iterator end() const
Definition: RawCalorimeterHitCollection.h:155
void setID(unsigned ID) override final
Definition: RawCalorimeterHitCollection.h:129
RawCalorimeterHit operator*()
Definition: RawCalorimeterHitCollection.cc:106
Definition: RawCalorimeterHitCollection.h:76