ATLAS Offline Software
Loading...
Searching...
No Matches
TracccTriton Namespace Reference

Namespaces

namespace  detail
 Wire format of one serialized container, per variable in schema order:

Functions

template<typename... VARTYPES, template< typename > class INTERFACE>
void serialize (const vecmem::edm::host< vecmem::edm::schema< VARTYPES... >, INTERFACE > &container, std::vector< std::uint8_t > &out)
 Append container to out in the format described above.
template<typename... VARTYPES, template< typename > class INTERFACE>
void deserialize (const std::uint8_t *data, std::size_t size, vecmem::edm::host< vecmem::edm::schema< VARTYPES... >, INTERFACE > &container)
 Fill container from size bytes at data.

Function Documentation

◆ deserialize()

template<typename... VARTYPES, template< typename > class INTERFACE>
void TracccTriton::deserialize ( const std::uint8_t * data,
std::size_t size,
vecmem::edm::host< vecmem::edm::schema< VARTYPES... >, INTERFACE > & container )

Fill container from size bytes at data.

Definition at line 129 of file TracccEdmSerialization.h.

131 {
132 detail::Reader in(data, size);
133 [&]<std::size_t... Index>(std::index_sequence<Index...>) {
134 (detail::read(in, container.template get<Index>()), ...);
135 }(std::make_index_sequence<sizeof...(VARTYPES)>{});
136}
IndexedConstituentUserInfo::Index Index
size_t size() const
Number of registered mappings.
T * get(TKey *tobj)
get a TObject* from a TKey* (why can't a TObject be a TKey?)
Definition hcg.cxx:132
void read(Reader &in, std::vector< Element, Allocator > &variable)

◆ serialize()

template<typename... VARTYPES, template< typename > class INTERFACE>
void TracccTriton::serialize ( const vecmem::edm::host< vecmem::edm::schema< VARTYPES... >, INTERFACE > & container,
std::vector< std::uint8_t > & out )

Append container to out in the format described above.

Definition at line 119 of file TracccEdmSerialization.h.

121 {
122 [&]<std::size_t... Index>(std::index_sequence<Index...>) {
123 (detail::write(out, container.template get<Index>()), ...);
124 }(std::make_index_sequence<sizeof...(VARTYPES)>{});
125}
void write(std::vector< std::uint8_t > &out, const std::vector< Element, Allocator > &variable)