1 #ifndef dune_artdaq_Overlays_TimingFragment_hh 2 #define dune_artdaq_Overlays_TimingFragment_hh 4 #include "artdaq-core/Data/Fragment.hh" 6 #include "cetlib_except/exception.h" 62 data_t fragment_version : 8;
66 static size_t const size_words = 1ul;
89 uint32_t tstampl : 32;
90 uint32_t tstamph : 32;
99 static size_t const size = 12ul;
102 static constexpr uint32_t VERSION = 3;
106 uint32_t
get_scmd()
const {
return body_()->scmd; }
107 uint32_t
get_tcmd()
const {
return body_()->tcmd; }
114 return make_tstamp64(body_()->tstampl, body_()->tstamph);
118 return make_tstamp64(body_()->last_runstart_tstampl,
119 body_()->last_runstart_tstamph);
122 return make_tstamp64(body_()->last_spillstart_tstampl,
123 body_()->last_spillstart_tstamph);
126 return make_tstamp64(body_()->last_spillend_tstampl,
127 body_()->last_spillend_tstamph);
142 uint64_t
l = tstampl;
143 uint64_t
h = tstamph;
144 return (l | (h<<32));
148 static_assert (
sizeof (
Body) ==
Body::size *
sizeof (uint32_t),
"TimingFragment::Data block size changed");
uint32_t last_spillstart_tstampl
uint64_t get_last_spillend_timestamp() const
uint32_t get_tstampl() const
std::ostream & operator<<(std::ostream &out, CTBFragment const &f)
uint64_t get_last_runstart_timestamp() const
uint32_t get_tcmd() const
uint64_t make_tstamp64(uint32_t tstampl, uint32_t tstamph) const
uint32_t last_spillstart_tstamph
decltype(auto) constexpr size(T &&obj)
ADL-aware version of std::size.
uint32_t last_spillend_tstampl
uint32_t last_spillend_tstamph
uint32_t get_cookie() const
TimingFragment(artdaq::Fragment const &f)
uint32_t get_cksum() const
artdaq::Fragment const & artdaq_Fragment_
uint64_t get_last_spillstart_timestamp() const
Body const * body_() const
uint64_t get_tstamp() const
uint32_t last_runstart_tstampl
uint32_t get_tstamph() const
uint32_t get_scmd() const
uint32_t get_evtctr() const
uint32_t last_runstart_tstamph