13void GRunDataCollection::collectDetectorTrueInfoData(
const std::string& sdName,
14 const std::unique_ptr<GTrueInfoData>& data) {
16 if (gdataCollectionMap.find(sdName) == gdataCollectionMap.end()) {
17 gdataCollectionMap[sdName] = std::make_unique<GDataCollection>();
21 gdataCollectionMap[sdName]->collectTrueInfosData(std::make_unique<GTrueInfoData>(*data));
22 log->
info(2,
"GRunDataCollection: collected detector TrueInfoData for ", sdName);
25void GRunDataCollection::collectDetectorDigitizedData(
const std::string& sdName,
26 const std::unique_ptr<GDigitizedData>& data) {
28 if (gdataCollectionMap.find(sdName) == gdataCollectionMap.end()) {
29 gdataCollectionMap[sdName] = std::make_unique<GDataCollection>();
33 gdataCollectionMap[sdName]->collectDigitizedData(std::make_unique<GDigitizedData>(*data));
34 log->
info(2,
"GRunDataCollection: collected detector DigitizedData for ", sdName);
39 auto& dcm = edc->getDataCollectionMap();
42 for (
auto& [sdname, ptr] : dcm) {
46 auto& true_infos_data = ptr->getTrueInfoData();
47 for (
auto& true_info_hit : true_infos_data) {
48 collectDetectorTrueInfoData(sdname, true_info_hit);
52 auto& digitized_data = ptr->getDigitizedData();
53 for (
auto& digitized_data_hit : digitized_data) {
54 collectDetectorDigitizedData(sdname, digitized_data_hit);
std::shared_ptr< GLogger > log
void info(int level, Args &&... args) const
void collect_event_data_collection(const std::shared_ptr< GEventDataCollection > edc)
Integrate one event data collection into this run summary.
Defines GRunDataCollection, run-level aggregation of detector data.