8#ifndef SYSTEMATICS_HANDLES__ATHENA_DEPENDENCY_HELPERS_H
9#define SYSTEMATICS_HANDLES__ATHENA_DEPENDENCY_HELPERS_H
19#ifndef XAOD_STANDALONE
22#include <GaudiKernel/DataObjID.h>
23#include <GaudiKernel/DataHandle.h>
36#ifndef XAOD_STANDALONE
37 template<
typename ContainerType>
38 requires (!std::is_const_v<ContainerType>)
46 if constexpr (!std::same_as<ContainerType, xAOD::MissingETContainer>)
51 if (!decoName.empty() && !decoWrite)
58 if (!typeName.empty())
59 return DataObjID(typeName,
"").clid();
66 const std::function<
void(
const DataObjID&, Gaudi::DataHandle::Mode)>& addAlgDependency,
67 const CLID clid,
const std::string&
name, Gaudi::DataHandle::Mode mode,
68 const std::string& decoName,
bool decoWrite);
macros to associate a CLID to a type
uint32_t CLID
The Class ID type.
Calculate topmost accessible base accessible via SG_BASES.
the interface for the central systematics service
CLID getClidForDependency(const std::string &typeName, const std::string &decoName, bool decoWrite)
Select isolated Photons, Electrons and Muons.
static constexpr CLID ID()
typename std::conditional< has_base &&base_has_clid, typename TopBase< Base1 >::type, T >::type type