22#ifndef ATHCONTAINERS_SUPPORTSTHINNING_H
23#define ATHCONTAINERS_SUPPORTSTHINNING_H
44 constexpr bool isxAODInterfaceObject =
45 std::derived_from<T, SG::AuxVectorBase> ||
46 std::derived_from<T, SG::AuxElement>;
48 if constexpr (isxAODInterfaceObject)
49 return T::supportsThinning;
65 std::is_base_of_v<SG::IAuxStore, T>;
67 typename std::enable_if_t<is_xAODStoreObject_v<T> >* =
nullptr>
70 typename std::enable_if_t<!is_xAODStoreObject_v<T> >* =
nullptr>
Base class for elements of a container that can have aux data.
Manage index tracking and synchronization of auxiliary data.
Interface for non-const operations on an auxiliary store.
constexpr bool is_xAODStoreObject_v
Test for an xAOD auxiliary store class supporting thinning.
bool constexpr xAODInterfaceSupportingThinning()
Test for an xAOD interface class supporting thinning.
bool constexpr xAODStoreSupportingThinning()