EICd
EIC data model
CalorimeterHitCollectionData.h
Go to the documentation of this file.
1// AUTOMATICALLY GENERATED FILE - DO NOT EDIT
2
3#ifndef EICD_CalorimeterHit_CollectionData_H
4#define EICD_CalorimeterHit_CollectionData_H
5
6// datamodel specific includes
9
10// podio specific includes
11#include "podio/CollectionBuffers.h"
12#include "podio/ICollectionProvider.h"
13
14#include <deque>
15#include <memory>
16
17namespace eicd {
18
19
20using CalorimeterHitObjPointerContainer = std::deque<CalorimeterHitObj*>;
21using CalorimeterHitDataContainer = std::vector<CalorimeterHitData>;
22
23
24/**
25 * Class encapsulating everything related to storage of data that is needed by a
26 * collection.
27 */
29public:
30 /**
31 * The Objs of this collection
32 */
34
35 /**
36 * Default constructor setting up the necessary buffers
37 */
39
40 /**
41 * Non copy-able, move-only class
42 */
47
48 /**
49 * Deconstructor
50 */
52
53 void clear(bool isSubsetColl);
54
55 podio::CollectionBuffers getCollectionBuffers(bool isSubsetColl);
56
57 void prepareForWrite(bool isSubsetColl);
58
59 void prepareAfterRead(int collectionID);
60
62
63
64 bool setReferences(const podio::ICollectionProvider* collectionProvider, bool isSubsetColl);
65
66private:
67 // members to handle 1-to-N-relations
68
69 // members to handle vector members
70
71 // I/O related buffers
72 podio::CollRefCollection m_refCollections{};
73 podio::VectorMembersInfo m_vecmem_info{};
74 std::unique_ptr<CalorimeterHitDataContainer> m_data{nullptr};
75};
76
77
78} // namespace eicd
79
80
81#endif
Definition: CalorimeterHitCollectionData.h:28
podio::CollectionBuffers getCollectionBuffers(bool isSubsetColl)
Definition: CalorimeterHitCollectionData.cc:29
CalorimeterHitCollectionData(CalorimeterHitCollectionData &&other)=default
CalorimeterHitCollectionData()
Definition: CalorimeterHitCollectionData.cc:10
void prepareAfterRead(int collectionID)
Definition: CalorimeterHitCollectionData.cc:56
void prepareForWrite(bool isSubsetColl)
Definition: CalorimeterHitCollectionData.cc:37
CalorimeterHitCollectionData & operator=(CalorimeterHitCollectionData &&other)=default
CalorimeterHitCollectionData & operator=(const CalorimeterHitCollectionData &)=delete
CalorimeterHitObjPointerContainer entries
Definition: CalorimeterHitCollectionData.h:33
void makeSubsetCollection()
Definition: CalorimeterHitCollectionData.cc:90
bool setReferences(const podio::ICollectionProvider *collectionProvider, bool isSubsetColl)
Definition: CalorimeterHitCollectionData.cc:71
void clear(bool isSubsetColl)
Definition: CalorimeterHitCollectionData.cc:14
CalorimeterHitCollectionData(const CalorimeterHitCollectionData &)=delete
Definition: CalorimeterHit.cc:13
std::deque< CalorimeterHitObj * > CalorimeterHitObjPointerContainer
Definition: CalorimeterHitCollectionData.h:20
std::vector< CalorimeterHitData > CalorimeterHitDataContainer
Definition: CalorimeterHitCollectionData.h:21