Skip to content

xAODCore+xAODTrigger: New method for registering auxiliary variables.

Scott Snyder requested to merge ssnyder/athena:regvar.xAODCore-20240430 into main

Introduce new macro AUXVAR_DECL to declare an auxiliary variable. Can use like:

class FooAuxContainer : public AuxContainerBase { ... private: AUXVAR_DECL (int, intVar);

Nothing is required in the constructor.

An alternate allocator for the vector (if it exists) may be passed as an extra argument:

AUXVAR_DECL (int, intVar, std::pmr::polymorphic_allocator);

In this case, the allocator for this variable will be initialized with the memory resource passed to the AuxContainerBase constructor.

This allows specifying the container type to use in one place. This style of declaration will also be needed for linked variables, such as packed links and jagged vectors.

Merge request reports