2#ifndef ATHEXDEVICE_DEVICECOLLECTION_H
3#define ATHEXDEVICE_DEVICECOLLECTION_H
9#include <vecmem/edm/container.hpp>
14template <
typename BASE>
34 const auto&
eta()
const {
return BASE::template
get<0>(); }
37 const auto&
phi()
const {
return BASE::template
get<1>(); }
50 vecmem::edm::type::vector<float>,
52 vecmem::edm::type::vector<float>,
54 vecmem::edm::type::jagged_vector<unsigned int>>;
59CLASS_DEF(AthExDevice::DeviceObjectCollection::buffer, 1183318154, 1)
macros to associate a CLID to a type
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
Interface to the example SoA collection.
const auto & indices() const
DeviceObject(const DeviceObject &other)=default
Use a default copy constructor.
DeviceObject(DeviceObject &&other)=default
Use a default move constructor.
T * get(TKey *tobj)
get a TObject* from a TKey* (why can't a TObject be a TKey?)
vecmem::edm::container< DeviceObject, vecmem::edm::type::vector< float >, vecmem::edm::type::vector< float >, vecmem::edm::type::jagged_vector< unsigned int > > DeviceObjectCollection
VecMem based SoA container used for the example(s).