BmnRoot 26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Loading...
Searching...
No Matches
TimesliceDescriptor.h
Go to the documentation of this file.
1// Copyright 2013 Jan de Cuveland <cmail@cuveland.de>
2/// \file
3/// \brief Defines the fles::TimesliceDescriptor serializable struct.
4#ifndef FLES_TIMESLICEDESCRIPTOR_H
5#define FLES_TIMESLICEDESCRIPTOR_H
6
7#include <boost/serialization/access.hpp>
8#include <boost/serialization/version.hpp>
9#include <cstdint>
10
11namespace fles
12{
13
14#pragma pack(1)
15
16/**
17 * \brief %Timeslice descriptor struct.
18 */
20{
21 /// Global index of this timeslice
22 uint64_t index;
23 /// Start offset (in items) of this timeslice
24 uint64_t ts_pos;
25 /// Number of core microslices
27 /// Number of components (contributing input channels)
29
31 /// Provide boost serialization access.
32 template<class Archive>
33 void serialize(Archive& ar, const unsigned int version)
34 {
35 if (version > 0) {
36 ar & index;
37 }
38 ar & ts_pos;
40 ar & num_components;
41 }
42};
43
44#pragma pack()
45
46} // namespace fles
47
48#pragma GCC diagnostic push
49#pragma GCC diagnostic ignored "-Wold-style-cast"
50BOOST_CLASS_VERSION(fles::TimesliceDescriptor, 1)
51#pragma GCC diagnostic pop
52
53#endif // FLES_TIMESLICEDESCRIPTOR_H
Main FLES namespace.
Timeslice descriptor struct.
uint64_t index
Global index of this timeslice.
friend class boost::serialization::access
void serialize(Archive &ar, const unsigned int version)
Provide boost serialization access.
uint32_t num_core_microslices
Number of core microslices.
uint64_t ts_pos
Start offset (in items) of this timeslice.
uint32_t num_components
Number of components (contributing input channels).