EDM4eic
EIC data model
Toggle main menu visibility
Loading...
Searching...
No Matches
TruthinessCollectionData.h
Go to the documentation of this file.
1
// AUTOMATICALLY GENERATED FILE - DO NOT EDIT
2
3
#ifndef EDM4EIC_Truthiness_CollectionData_H
4
#define EDM4EIC_Truthiness_CollectionData_H
5
6
// datamodel specific includes
7
#include "
edm4eic/TruthinessData.h
"
8
#include "
edm4eic/TruthinessObj.h
"
9
#include "
edm4eic/Truthiness.h
"
10
#include "
edm4eic/MCRecoParticleAssociation.h
"
11
#include "
edm4eic/ReconstructedParticle.h
"
12
#include "edm4hep/MCParticle.h"
13
14
// schema evolution specific includes
15
16
// podio specific includes
17
#include "podio/CollectionBuffers.h"
18
#include "podio/ICollectionProvider.h"
19
20
#include <deque>
21
#include <memory>
22
23
namespace
edm4eic
{
24
25
26
using
TruthinessObjPointerContainer
= std::deque<TruthinessObj*>;
27
using
TruthinessDataContainer
= std::vector<TruthinessData>;
28
29
30
/**
31
* Class encapsulating everything related to storage of data that is needed by a
32
* collection.
33
*/
34
class
TruthinessCollectionData
{
35
public
:
36
/**
37
* The Objs of this collection
38
*/
39
TruthinessObjPointerContainer
entries
{};
40
41
/**
42
* Default constructor setting up the necessary buffers
43
*/
44
TruthinessCollectionData
();
45
46
/**
47
* Constructor from existing I/O buffers
48
*/
49
TruthinessCollectionData
(podio::CollectionReadBuffers buffers,
bool
isSubsetColl);
50
51
/**
52
* Non copy-able, move-only class
53
*/
54
TruthinessCollectionData
(
const
TruthinessCollectionData
&) =
delete
;
55
TruthinessCollectionData
&
operator=
(
const
TruthinessCollectionData
&) =
delete
;
56
TruthinessCollectionData
(
TruthinessCollectionData
&& other) =
default
;
57
TruthinessCollectionData
&
operator=
(
TruthinessCollectionData
&& other) =
default
;
58
59
/**
60
* Destructor
61
*/
62
~TruthinessCollectionData
() =
default
;
63
64
void
clear
(
bool
isSubsetColl);
65
66
podio::CollectionWriteBuffers
getCollectionBuffers
(
bool
isSubsetColl);
67
68
void
prepareForWrite
(
bool
isSubsetColl);
69
70
void
prepareAfterRead
(uint32_t collectionID);
71
72
void
makeSubsetCollection
();
73
74
void
createRelations
(
TruthinessObj
* obj);
75
76
bool
setReferences
(
const
podio::ICollectionProvider* collectionProvider,
bool
isSubsetColl);
77
78
private
:
79
// members to handle 1-to-N-relations
80
podio::UVecPtr<edm4eic::MCRecoParticleAssociation> m_rel_associations{std::make_unique<std::vector<edm4eic::MCRecoParticleAssociation>>()};
///< Relation buffer for read / write
81
std::vector<podio::UVecPtr<edm4eic::MCRecoParticleAssociation>> m_rel_associations_tmp{};
///< Relation buffer for internal book-keeping
82
podio::UVecPtr<edm4hep::MCParticle> m_rel_unassociatedMCParticles{std::make_unique<std::vector<edm4hep::MCParticle>>()};
///< Relation buffer for read / write
83
std::vector<podio::UVecPtr<edm4hep::MCParticle>> m_rel_unassociatedMCParticles_tmp{};
///< Relation buffer for internal book-keeping
84
podio::UVecPtr<edm4eic::ReconstructedParticle> m_rel_unassociatedRecoParticles{std::make_unique<std::vector<edm4eic::ReconstructedParticle>>()};
///< Relation buffer for read / write
85
std::vector<podio::UVecPtr<edm4eic::ReconstructedParticle>> m_rel_unassociatedRecoParticles_tmp{};
///< Relation buffer for internal book-keeping
86
87
// members to handle vector members
88
podio::UVecPtr<edm4eic::TruthinessContribution> m_vec_associationContributions{
nullptr
};
/// combined vector of all objects in collection
89
std::vector<podio::UVecPtr<edm4eic::TruthinessContribution>> m_vecs_associationContributions{};
/// pointers to individual member vectors
90
91
// I/O related buffers
92
podio::CollRefCollection m_refCollections{};
93
podio::VectorMembersInfo m_vecmem_info{};
94
std::unique_ptr<TruthinessDataContainer> m_data{
nullptr
};
95
};
96
97
98
}
// namespace edm4eic
99
100
101
#endif
MCRecoParticleAssociation.h
ReconstructedParticle.h
Truthiness.h
TruthinessData.h
TruthinessObj.h
edm4eic::TruthinessCollectionData::setReferences
bool setReferences(const podio::ICollectionProvider *collectionProvider, bool isSubsetColl)
Definition
TruthinessCollectionData.cc:220
edm4eic::TruthinessCollectionData::prepareAfterRead
void prepareAfterRead(uint32_t collectionID)
Definition
TruthinessCollectionData.cc:191
edm4eic::TruthinessCollectionData::~TruthinessCollectionData
~TruthinessCollectionData()=default
edm4eic::TruthinessCollectionData::TruthinessCollectionData
TruthinessCollectionData(const TruthinessCollectionData &)=delete
edm4eic::TruthinessCollectionData::prepareForWrite
void prepareForWrite(bool isSubsetColl)
Definition
TruthinessCollectionData.cc:129
edm4eic::TruthinessCollectionData::operator=
TruthinessCollectionData & operator=(TruthinessCollectionData &&other)=default
edm4eic::TruthinessCollectionData::createRelations
void createRelations(TruthinessObj *obj)
Definition
TruthinessCollectionData.cc:209
edm4eic::TruthinessCollectionData::clear
void clear(bool isSubsetColl)
Definition
TruthinessCollectionData.cc:58
edm4eic::TruthinessCollectionData::makeSubsetCollection
void makeSubsetCollection()
Definition
TruthinessCollectionData.cc:281
edm4eic::TruthinessCollectionData::operator=
TruthinessCollectionData & operator=(const TruthinessCollectionData &)=delete
edm4eic::TruthinessCollectionData::TruthinessCollectionData
TruthinessCollectionData()
Definition
TruthinessCollectionData.cc:16
edm4eic::TruthinessCollectionData::entries
TruthinessObjPointerContainer entries
Definition
TruthinessCollectionData.h:39
edm4eic::TruthinessCollectionData::TruthinessCollectionData
TruthinessCollectionData(TruthinessCollectionData &&other)=default
edm4eic::TruthinessCollectionData::getCollectionBuffers
podio::CollectionWriteBuffers getCollectionBuffers(bool isSubsetColl)
Definition
TruthinessCollectionData.cc:115
edm4eic::TruthinessObj
Definition
TruthinessObj.h:23
edm4eic
Definition
CalorimeterHit.cc:17
edm4eic::TruthinessObjPointerContainer
std::deque< TruthinessObj * > TruthinessObjPointerContainer
Definition
TruthinessCollectionData.h:26
edm4eic::TruthinessDataContainer
std::vector< TruthinessData > TruthinessDataContainer
Definition
TruthinessCollectionData.h:27
build
edm4eic
TruthinessCollectionData.h
Generated by
1.17.0