gdata
gDataCollection.h
Go to the documentation of this file.
1 #ifndef GHITSCOLLECTION_H
2 #define GHITSCOLLECTION_H 1
3 
12 #include "gTrueInfoData.h"
13 #include "gDigitizedData.h"
14 #include <vector>
15 
17 public:
22  explicit GDataCollection(std::shared_ptr<GLogger> logger) : log(std::move(logger)) {
23  log->debug(CONSTRUCTOR, "GDataCollection");
24  trueInfosData = new std::vector<GTrueInfoData*>;
25  digitizedData = new std::vector<GDigitizedData*>;
26  }
27 
34  for (auto* hit : (*trueInfosData)) { delete hit; }
35  for (auto* hit : (*digitizedData)) { delete hit; }
36  log->debug(DESTRUCTOR, "GDataCollection");
37  delete trueInfosData;
38  delete digitizedData;
39  }
40 
45  void addTrueInfoData(GTrueInfoData* data) const {
46  log->debug(NORMAL, " adding hit to trueInfosData with identity: ", data->getIdentityString());
47  trueInfosData->push_back(data);
48  }
49 
54  void addDigitizedData(GDigitizedData* data) const {
55  log->debug(NORMAL, " adding hit to digitizedData with identity: ", data->getIdentityString());
56  digitizedData->push_back(data);
57  }
58 
63  [[nodiscard]] inline const std::vector<GTrueInfoData*>* getTrueInfoData() const { return trueInfosData; }
64 
69  [[nodiscard]] inline const std::vector<GDigitizedData*>* getDigitizedData() const { return digitizedData; }
70 
71 private:
72  std::vector<GTrueInfoData*>* trueInfosData = nullptr;
73  std::vector<GDigitizedData*>* digitizedData = nullptr;
74  std::shared_ptr<GLogger> log;
75 };
76 
77 #endif
~GDataCollection()
Destructor for GDataCollection.
const std::vector< GDigitizedData * > * getDigitizedData() const
Returns the vector of digitized hit data.
void addTrueInfoData(GTrueInfoData *data) const
Adds true hit information data.
const std::vector< GTrueInfoData * > * getTrueInfoData() const
Returns the vector of true hit information data.
void addDigitizedData(GDigitizedData *data) const
Adds digitized hit data.
GDataCollection(std::shared_ptr< GLogger > logger)
Constructs a GDataCollection.
std::string getIdentityString()
Returns a string representation of the hit identity.
std::string getIdentityString()
Returns a string representation of the identity.
Defines the GTrueInfoData class which holds true hit data.