EDM4eic
EIC data model
Loading...
Searching...
No Matches
PMTHitCollectionData.h
Go to the documentation of this file.
1// AUTOMATICALLY GENERATED FILE - DO NOT EDIT
2
3#ifndef EDM4EIC_PMTHit_CollectionData_H
4#define EDM4EIC_PMTHit_CollectionData_H
5
6// datamodel specific includes
8#include "edm4eic/PMTHitObj.h"
9
10// schema evolution specific includes
11
12// podio specific includes
13#include "podio/CollectionBuffers.h"
14#include "podio/ICollectionProvider.h"
15
16#include <deque>
17#include <memory>
18
19namespace edm4eic {
20
21
22using PMTHitObjPointerContainer = std::deque<PMTHitObj*>;
23using PMTHitDataContainer = std::vector<PMTHitData>;
24
25
26/**
27 * Class encapsulating everything related to storage of data that is needed by a
28 * collection.
29 */
31public:
32 /**
33 * The Objs of this collection
34 */
36
37 /**
38 * Default constructor setting up the necessary buffers
39 */
41
42 /**
43 * Constructor from existing I/O buffers
44 */
45 PMTHitCollectionData(podio::CollectionReadBuffers buffers, bool isSubsetColl);
46
47 /**
48 * Non copy-able, move-only class
49 */
54
55 /**
56 * Deconstructor
57 */
59
60 void clear(bool isSubsetColl);
61
62 podio::CollectionWriteBuffers getCollectionBuffers(bool isSubsetColl);
63
64 void prepareForWrite(bool isSubsetColl);
65
66 void prepareAfterRead(uint32_t collectionID);
67
69
70
71 bool setReferences(const podio::ICollectionProvider* collectionProvider, bool isSubsetColl);
72
73private:
74 // members to handle 1-to-N-relations
75
76 // members to handle vector members
77
78 // I/O related buffers
79 podio::CollRefCollection m_refCollections{};
80 podio::VectorMembersInfo m_vecmem_info{};
81 std::unique_ptr<PMTHitDataContainer> m_data{nullptr};
82};
83
84
85} // namespace edm4eic
86
87
88#endif
Definition PMTHitCollectionData.h:30
PMTHitCollectionData(const PMTHitCollectionData &)=delete
PMTHitCollectionData()
Definition PMTHitCollectionData.cc:10
void prepareAfterRead(uint32_t collectionID)
Definition PMTHitCollectionData.cc:72
void prepareForWrite(bool isSubsetColl)
Definition PMTHitCollectionData.cc:53
PMTHitCollectionData & operator=(PMTHitCollectionData &&other)=default
PMTHitObjPointerContainer entries
Definition PMTHitCollectionData.h:35
podio::CollectionWriteBuffers getCollectionBuffers(bool isSubsetColl)
Definition PMTHitCollectionData.cc:44
PMTHitCollectionData(PMTHitCollectionData &&other)=default
void clear(bool isSubsetColl)
Definition PMTHitCollectionData.cc:29
void makeSubsetCollection()
Definition PMTHitCollectionData.cc:106
PMTHitCollectionData & operator=(const PMTHitCollectionData &)=delete
bool setReferences(const podio::ICollectionProvider *collectionProvider, bool isSubsetColl)
Definition PMTHitCollectionData.cc:87
Definition CalorimeterHit.cc:18
std::deque< PMTHitObj * > PMTHitObjPointerContainer
Definition PMTHitCollectionData.h:22
std::vector< PMTHitData > PMTHitDataContainer
Definition PMTHitCollectionData.h:23