Incident service handle listening for BeginInputFile and EndInputFile.
49{
51
52 std::vector<std::unique_ptr<ByteStreamMetadata> >
copy;
53 std::set<std::string> transGuids;
54
55
56 for(const auto& key : keys) {
57 ATH_MSG_DEBUG(
"Processing Input ByteStreamMetadata, key = " << key);
59
61
62 std::list<SG::ObjectWithVersion<ByteStreamMetadata> > allVersions;
64
65 for(SG::ObjectWithVersion<ByteStreamMetadata>& obj : allVersions)
66 copy.push_back(std::make_unique<ByteStreamMetadata>(*
obj.dataObject));
67
68 }
69
70
72
73 std::list<SG::ObjectWithVersion<ByteStreamMetadataContainer> > allVersions;
75
76 for(SG::ObjectWithVersion<ByteStreamMetadataContainer>& obj : allVersions)
77 for(
const ByteStreamMetadata* md : *
obj.dataObject)
78 copy.push_back(std::make_unique<ByteStreamMetadata>(*md));
79 }
80
81
83
84 transGuids.clear();
85
87
89
90 ATH_MSG_DEBUG(
"Pre-existing ByteStreamMetadataContainer found");
92
93 for (const auto bsmd : *bsmdc)
94 transGuids.insert(bsmd->getGuid());
95
96 } else {
97
100
101 }
102
103 for(auto& pBSMD : copy) {
104
105 if(transGuids.insert(pBSMD->getGuid()).second)
106 bsmdc->push_back(std::move(pBSMD));
107 }
108 }
109 }
110
111 return StatusCode::SUCCESS;
112}
#define ATH_CHECK
Evaluate an expression and check for errors.
ByteStreamMetadataContainer