DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
Structs.hpp
Go to the documentation of this file.
1/*
2 * This file is 100% generated. Any manual edits will likely be lost.
3 *
4 * This contains struct and other type definitions for shema in
5 * namespace dunedaq::timing::timingfirmwareinfo.
6 */
7#ifndef DUNEDAQ_TIMING_TIMINGFIRMWAREINFO_STRUCTS_HPP
8#define DUNEDAQ_TIMING_TIMINGFIRMWAREINFO_STRUCTS_HPP
9
10#include <cstdint>
13
14#include <string>
15
17
18 // @brief A bool
19 using BoolData = bool;
20
21 // @brief A double
22 using DoubleValue = double;
23
24
25 // @brief 32 bit uint
26 using RegValue = uint32_t; // NOLINT
27
28
29 // @brief HSI monitor data
31 {
32
33 // @brief Source of HSI data
35
36 // @brief Rising edge mask
38
39 // @brief Falling edge mask
41
42 // @brief Inverted mask
44
45 // @brief Buffer enable flag
47
48 // @brief Buffer enable flag
50
51 // @brief Buffer enable flag
53
54 // @brief Number of words in buffer
56
57 // @brief HSI triggering enabled
59 };
60
61 // @brief 64 bit uint
62 using LongInt = int64_t;
63
64
65 // @brief 64 bit uint
66 using LongUint = uint64_t; // NOLINT
67
68
69 // @brief master monitor data
71 {
72
73 // @brief Timestamp
75
76 // @brief Timestamp bcast enable
78
79 // @brief Timestamp valid
81
82 // @brief Timestamp transmit error
84
85 // @brief Tx error
87
88 // @brief Counters ready
90 };
91
92 // @brief Sent command counters structure
94 {
95
96 // @brief Number of commands sent
98 };
99
100 // @brief A string field
101 using TextData = std::string;
102
103 // @brief Timing hw cmd structure
105 {
106
107 // @brief Device name
109
110 // @brief IO info payload
112
113 // @brief Master info payload
115
116 // @brief Endpoint info payload
118
119 // @brief HSI info payload
121 };
122
123 // @brief Fixed length command counters structure
125 {
126
127 // @brief Number of commands accepted
129
130 // @brief Number of commands rejected
132 };
133
134} // namespace dunedaq::timing::timingfirmwareinfo
135
136#endif // DUNEDAQ_TIMING_TIMINGFIRMWAREINFO_STRUCTS_HPP
Unknown serialization type<< t,((char) t)) template< typename T > inline std::string datatype_to_string() { return "Unknown";} namespace serialization { template< typename T > struct is_serializable :std::false_type {};enum SerializationType { kMsgPack };inline SerializationType from_string(const std::string s) { if(s=="msgpack") return kMsgPack;throw UnknownSerializationTypeString(ERS_HERE, s);} constexpr uint8_t serialization_type_byte(SerializationType stype) { switch(stype) { case kMsgPack:return 'M';default:throw UnknownSerializationTypeEnum(ERS_HERE);} } constexpr SerializationType DEFAULT_SERIALIZATION_TYPE=kMsgPack;template< class T > std::vector< uint8_t > serialize(const T &obj, SerializationType stype=DEFAULT_SERIALIZATION_TYPE) { switch(stype) { case kMsgPack:{ msgpack::sbuffer buf;msgpack::pack(buf, obj);std::vector< uint8_t > ret(buf.size()+1);ret[0]=serialization_type_byte(stype);std::copy(buf.data(), buf.data()+buf.size(), ret.begin()+1);return ret;} default:throw UnknownSerializationTypeEnum(ERS_HERE);} } template< class T, typename CharType=unsigned char > T deserialize(const std::vector< CharType > &v) { switch(v[0]) { case serialization_type_byte(kMsgPack):{ try { msgpack::object_handle oh=msgpack::unpack(const_cast< char * >(reinterpret_cast< const char * >(v.data()+1)), v.size() - 1,[](msgpack::type::object_type, std::size_t, void *) -> bool
timinghardwareinfo::TimingPLLMonitorData pll_info
Definition Structs.hpp:111
timingendpointinfo::TimingEndpointInfo endpoint_info
Definition Structs.hpp:117