ATLAS Offline Software
Loading...
Searching...
No Matches
AthenaDependencyHelpers.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
6
7
8//
9// includes
10//
11
13
14#ifndef XAOD_STANDALONE
17
18//
19// method implementations
20//
21
22namespace CP
23{
24 namespace detail
25 {
26 StatusCode addSysDependency (MsgStream& msg, const ISystematicsSvc& svc,
27 const std::function<void(const DataObjID&, Gaudi::DataHandle::Mode)>& addAlgDependency,
28 const CLID clid, const std::string& name, Gaudi::DataHandle::Mode mode,
29 const std::string& decoName, bool decoWrite)
30 {
31 // Build full key string: "StoreGateSvc+name"
32 std::string fullKeyStr = "StoreGateSvc+";
33
34 {
40 std::string temp;
41 if (svc.makeSystematicsName (temp, name, CP::SystematicSet{}).isFailure())
42 {
43 msg << MSG::ERROR << "could not build nominal systematic name for " + name << endmsg;
44 return StatusCode::FAILURE;
45 }
46 fullKeyStr += temp;
47 }
48
49 if (!decoName.empty())
50 {
51 std::string temp;
52 if (svc.makeSystematicsName (temp, decoName, CP::SystematicSet{}).isFailure())
53 {
54 msg << MSG::ERROR << "could not build nominal systematic name for " + decoName << endmsg;
55 return StatusCode::FAILURE;
56 }
57
58 // Build decoration key string
59 fullKeyStr += "." + temp;
60
61 // Decoration mode
62 mode = decoWrite ? Gaudi::DataHandle::Writer : Gaudi::DataHandle::Reader;
63 }
64
65 addAlgDependency(DataObjID{clid, std::move(fullKeyStr)}, mode);
66 return StatusCode::SUCCESS;
67 }
68 }
69}
70#endif
#define endmsg
uint32_t CLID
The Class ID type.
the interface for the central systematics service
Class to wrap a set of SystematicVariations.
StatusCode addSysDependency(MsgStream &msg, const ISystematicsSvc &svc, const std::function< void(const DataObjID &, Gaudi::DataHandle::Mode)> &addAlgDependency, const CLID clid, const std::string &name, Gaudi::DataHandle::Mode mode, const std::string &decoName, bool decoWrite)
Select isolated Photons, Electrons and Muons.
MsgStream & msg
Definition testRead.cxx:32