3#ifndef FLATBUFFERS_GENERATED_MESSAGES_SCC_TCP4TLM_H_
4#define FLATBUFFERS_GENERATED_MESSAGES_SCC_TCP4TLM_H_
6#include "flatbuffers/flatbuffers.h"
10static_assert(FLATBUFFERS_VERSION_MAJOR == 25 && FLATBUFFERS_VERSION_MINOR == 9 && FLATBUFFERS_VERSION_REVISION == 23,
11 "Non-compatible flatbuffers version included");
16struct NotifyEndpointMsg;
19struct NotifyShutdownMsg;
40struct RequestEnvelope;
43struct ResponseEnvelope;
46enum ResponseStatus : uint8_t {
47 ResponseStatus_OK = 0,
48 ResponseStatus_ACCEPTED = 1,
49 ResponseStatus_DELAYED = 2,
50 ResponseStatus_DECLINED = 3,
51 ResponseStatus_FAILURE = 4,
52 ResponseStatus_MIN = ResponseStatus_OK,
53 ResponseStatus_MAX = ResponseStatus_FAILURE
56inline const ResponseStatus (&EnumValuesResponseStatus())[5] {
57 static const ResponseStatus values[] = {ResponseStatus_OK, ResponseStatus_ACCEPTED, ResponseStatus_DELAYED, ResponseStatus_DECLINED,
58 ResponseStatus_FAILURE};
62inline const char*
const* EnumNamesResponseStatus() {
63 static const char*
const names[6] = {
"OK",
"ACCEPTED",
"DELAYED",
"DECLINED",
"FAILURE",
nullptr};
67inline const char* EnumNameResponseStatus(ResponseStatus e) {
68 if(::flatbuffers::IsOutRange(e, ResponseStatus_OK, ResponseStatus_FAILURE))
70 const size_t index =
static_cast<size_t>(e);
71 return EnumNamesResponseStatus()[index];
74enum BusAccessType : uint8_t {
75 BusAccessType_NORMAL_ACC = 0,
76 BusAccessType_DEBUG_ACC = 1,
77 BusAccessType_MIN = BusAccessType_NORMAL_ACC,
78 BusAccessType_MAX = BusAccessType_DEBUG_ACC
81inline const BusAccessType (&EnumValuesBusAccessType())[2] {
82 static const BusAccessType values[] = {BusAccessType_NORMAL_ACC, BusAccessType_DEBUG_ACC};
86inline const char*
const* EnumNamesBusAccessType() {
87 static const char*
const names[3] = {
"NORMAL_ACC",
"DEBUG_ACC",
nullptr};
91inline const char* EnumNameBusAccessType(BusAccessType e) {
92 if(::flatbuffers::IsOutRange(e, BusAccessType_NORMAL_ACC, BusAccessType_DEBUG_ACC))
94 const size_t index =
static_cast<size_t>(e);
95 return EnumNamesBusAccessType()[index];
98enum RequestPayload : uint8_t {
99 RequestPayload_NONE = 0,
100 RequestPayload_NotifyEndpointMsg = 1,
101 RequestPayload_NotifyShutdownMsg = 2,
102 RequestPayload_SyncMsg = 3,
103 RequestPayload_BusOpMsg = 4,
104 RequestPayload_SigOpMsg = 5,
105 RequestPayload_LogMsg = 6,
106 RequestPayload_MIN = RequestPayload_NONE,
107 RequestPayload_MAX = RequestPayload_LogMsg
110inline const RequestPayload (&EnumValuesRequestPayload())[7] {
111 static const RequestPayload values[] = {RequestPayload_NONE, RequestPayload_NotifyEndpointMsg, RequestPayload_NotifyShutdownMsg,
112 RequestPayload_SyncMsg, RequestPayload_BusOpMsg, RequestPayload_SigOpMsg,
113 RequestPayload_LogMsg};
117inline const char*
const* EnumNamesRequestPayload() {
118 static const char*
const names[8] = {
"NONE",
"NotifyEndpointMsg",
"NotifyShutdownMsg",
"SyncMsg",
"BusOpMsg",
"SigOpMsg",
"LogMsg",
123inline const char* EnumNameRequestPayload(RequestPayload e) {
124 if(::flatbuffers::IsOutRange(e, RequestPayload_NONE, RequestPayload_LogMsg))
126 const size_t index =
static_cast<size_t>(e);
127 return EnumNamesRequestPayload()[index];
130template <
typename T>
struct RequestPayloadTraits {
static const RequestPayload enum_value = RequestPayload_NONE; };
133 static const RequestPayload enum_value = RequestPayload_NotifyEndpointMsg;
137 static const RequestPayload enum_value = RequestPayload_NotifyShutdownMsg;
140template <>
struct RequestPayloadTraits<
scc::tcp4tlm::SyncMsg> {
static const RequestPayload enum_value = RequestPayload_SyncMsg; };
142template <>
struct RequestPayloadTraits<
scc::tcp4tlm::BusOpMsg> {
static const RequestPayload enum_value = RequestPayload_BusOpMsg; };
144template <>
struct RequestPayloadTraits<
scc::tcp4tlm::SigOpMsg> {
static const RequestPayload enum_value = RequestPayload_SigOpMsg; };
146template <>
struct RequestPayloadTraits<
scc::tcp4tlm::LogMsg> {
static const RequestPayload enum_value = RequestPayload_LogMsg; };
148bool VerifyRequestPayload(::flatbuffers::Verifier& verifier,
const void* obj, RequestPayload type);
149bool VerifyRequestPayloadVector(::flatbuffers::Verifier& verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>>* values,
150 const ::flatbuffers::Vector<uint8_t>* types);
152enum ResponsePayload : uint8_t {
153 ResponsePayload_NONE = 0,
154 ResponsePayload_ResponseMsg = 1,
155 ResponsePayload_BusDataMsg = 2,
156 ResponsePayload_MIN = ResponsePayload_NONE,
157 ResponsePayload_MAX = ResponsePayload_BusDataMsg
160inline const ResponsePayload (&EnumValuesResponsePayload())[3] {
161 static const ResponsePayload values[] = {ResponsePayload_NONE, ResponsePayload_ResponseMsg, ResponsePayload_BusDataMsg};
165inline const char*
const* EnumNamesResponsePayload() {
166 static const char*
const names[4] = {
"NONE",
"ResponseMsg",
"BusDataMsg",
nullptr};
170inline const char* EnumNameResponsePayload(ResponsePayload e) {
171 if(::flatbuffers::IsOutRange(e, ResponsePayload_NONE, ResponsePayload_BusDataMsg))
173 const size_t index =
static_cast<size_t>(e);
174 return EnumNamesResponsePayload()[index];
177template <
typename T>
struct ResponsePayloadTraits {
static const ResponsePayload enum_value = ResponsePayload_NONE; };
180 static const ResponsePayload enum_value = ResponsePayload_ResponseMsg;
184 static const ResponsePayload enum_value = ResponsePayload_BusDataMsg;
187bool VerifyResponsePayload(::flatbuffers::Verifier& verifier,
const void* obj, ResponsePayload type);
188bool VerifyResponsePayloadVector(::flatbuffers::Verifier& verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>>* values,
189 const ::flatbuffers::Vector<uint8_t>* types);
193 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE { VT_ID = 4, VT_HOSTNAME = 6, VT_PORT = 8 };
194 uint32_t id()
const {
return GetField<uint32_t>(VT_ID, 0); }
195 const ::flatbuffers::String* hostname()
const {
return GetPointer<const ::flatbuffers::String*>(VT_HOSTNAME); }
196 uint16_t port()
const {
return GetField<uint16_t>(VT_PORT, 0); }
197 bool Verify(::flatbuffers::Verifier& verifier)
const {
198 return VerifyTableStart(verifier) && VerifyField<uint32_t>(verifier, VT_ID, 4) && VerifyOffset(verifier, VT_HOSTNAME) &&
199 verifier.VerifyString(hostname()) && VerifyField<uint16_t>(verifier, VT_PORT, 2) && verifier.EndTable();
203struct NotifyEndpointMsgBuilder {
204 typedef NotifyEndpointMsg Table;
205 ::flatbuffers::FlatBufferBuilder& fbb_;
206 ::flatbuffers::uoffset_t start_;
207 void add_id(uint32_t
id) { fbb_.AddElement<uint32_t>(NotifyEndpointMsg::VT_ID, id, 0); }
208 void add_hostname(::flatbuffers::Offset<::flatbuffers::String> hostname) { fbb_.AddOffset(NotifyEndpointMsg::VT_HOSTNAME, hostname); }
209 void add_port(uint16_t port) { fbb_.AddElement<uint16_t>(NotifyEndpointMsg::VT_PORT, port, 0); }
210 explicit NotifyEndpointMsgBuilder(::flatbuffers::FlatBufferBuilder& _fbb)
212 start_ = fbb_.StartTable();
214 ::flatbuffers::Offset<NotifyEndpointMsg> Finish() {
215 const auto end = fbb_.EndTable(start_);
216 auto o = ::flatbuffers::Offset<NotifyEndpointMsg>(end);
221inline ::flatbuffers::Offset<NotifyEndpointMsg> CreateNotifyEndpointMsg(::flatbuffers::FlatBufferBuilder& _fbb, uint32_t
id = 0,
222 ::flatbuffers::Offset<::flatbuffers::String> hostname = 0,
225 builder_.add_hostname(hostname);
227 builder_.add_port(port);
228 return builder_.Finish();
231inline ::flatbuffers::Offset<NotifyEndpointMsg> CreateNotifyEndpointMsgDirect(::flatbuffers::FlatBufferBuilder& _fbb, uint32_t
id = 0,
232 const char* hostname =
nullptr, uint16_t port = 0) {
233 auto hostname__ = hostname ? _fbb.CreateString(hostname) : 0;
234 return scc::tcp4tlm::CreateNotifyEndpointMsg(_fbb,
id, hostname__, port);
237struct NotifyShutdownMsg FLATBUFFERS_FINAL_CLASS :
private ::flatbuffers::Table {
238 typedef NotifyShutdownMsgBuilder Builder;
239 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE { VT_ID = 4 };
240 uint32_t id()
const {
return GetField<uint32_t>(VT_ID, 0); }
241 bool Verify(::flatbuffers::Verifier& verifier)
const {
242 return VerifyTableStart(verifier) && VerifyField<uint32_t>(verifier, VT_ID, 4) && verifier.EndTable();
246struct NotifyShutdownMsgBuilder {
247 typedef NotifyShutdownMsg Table;
248 ::flatbuffers::FlatBufferBuilder& fbb_;
249 ::flatbuffers::uoffset_t start_;
250 void add_id(uint32_t
id) { fbb_.AddElement<uint32_t>(NotifyShutdownMsg::VT_ID, id, 0); }
251 explicit NotifyShutdownMsgBuilder(::flatbuffers::FlatBufferBuilder& _fbb)
253 start_ = fbb_.StartTable();
255 ::flatbuffers::Offset<NotifyShutdownMsg> Finish() {
256 const auto end = fbb_.EndTable(start_);
257 auto o = ::flatbuffers::Offset<NotifyShutdownMsg>(end);
262inline ::flatbuffers::Offset<NotifyShutdownMsg> CreateNotifyShutdownMsg(::flatbuffers::FlatBufferBuilder& _fbb, uint32_t
id = 0) {
265 return builder_.Finish();
268struct SyncMsg FLATBUFFERS_FINAL_CLASS :
private ::flatbuffers::Table {
269 typedef SyncMsgBuilder Builder;
270 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE { VT_ID = 4, VT_TIME_STAMP = 6 };
271 uint32_t id()
const {
return GetField<uint32_t>(VT_ID, 0); }
272 uint64_t time_stamp()
const {
return GetField<uint64_t>(VT_TIME_STAMP, 0); }
273 bool Verify(::flatbuffers::Verifier& verifier)
const {
274 return VerifyTableStart(verifier) && VerifyField<uint32_t>(verifier, VT_ID, 4) &&
275 VerifyField<uint64_t>(verifier, VT_TIME_STAMP, 8) && verifier.EndTable();
279struct SyncMsgBuilder {
280 typedef SyncMsg Table;
281 ::flatbuffers::FlatBufferBuilder& fbb_;
282 ::flatbuffers::uoffset_t start_;
283 void add_id(uint32_t
id) { fbb_.AddElement<uint32_t>(SyncMsg::VT_ID, id, 0); }
284 void add_time_stamp(uint64_t time_stamp) { fbb_.AddElement<uint64_t>(SyncMsg::VT_TIME_STAMP, time_stamp, 0); }
285 explicit SyncMsgBuilder(::flatbuffers::FlatBufferBuilder& _fbb)
287 start_ = fbb_.StartTable();
289 ::flatbuffers::Offset<SyncMsg> Finish() {
290 const auto end = fbb_.EndTable(start_);
291 auto o = ::flatbuffers::Offset<SyncMsg>(end);
296inline ::flatbuffers::Offset<SyncMsg> CreateSyncMsg(::flatbuffers::FlatBufferBuilder& _fbb, uint32_t
id = 0, uint64_t time_stamp = 0) {
298 builder_.add_time_stamp(time_stamp);
300 return builder_.Finish();
303struct BusOpMsg FLATBUFFERS_FINAL_CLASS :
private ::flatbuffers::Table {
304 typedef BusOpMsgBuilder Builder;
305 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
317 uint32_t id()
const {
return GetField<uint32_t>(VT_ID, 0); }
318 uint64_t time_stamp()
const {
return GetField<uint64_t>(VT_TIME_STAMP, 0); }
319 uint64_t time_offset()
const {
return GetField<uint64_t>(VT_TIME_OFFSET, 0); }
320 scc::tcp4tlm::BusAccessType
type()
const {
return static_cast<scc::tcp4tlm::BusAccessType
>(GetField<uint8_t>(VT_TYPE, 0)); }
321 uint32_t index()
const {
return GetField<uint32_t>(VT_INDEX, 0); }
322 uint64_t address()
const {
return GetField<uint64_t>(VT_ADDRESS, 0); }
323 uint32_t size()
const {
return GetField<uint32_t>(VT_SIZE, 0); }
324 bool no_response()
const {
return GetField<uint8_t>(VT_NO_RESPONSE, 0) != 0; }
325 const ::flatbuffers::Vector<uint8_t>* data()
const {
return GetPointer<const ::flatbuffers::Vector<uint8_t>*>(VT_DATA); }
326 const ::flatbuffers::Vector<uint8_t>* byte_enable()
const {
return GetPointer<const ::flatbuffers::Vector<uint8_t>*>(VT_BYTE_ENABLE); }
327 bool Verify(::flatbuffers::Verifier& verifier)
const {
328 return VerifyTableStart(verifier) && VerifyField<uint32_t>(verifier, VT_ID, 4) &&
329 VerifyField<uint64_t>(verifier, VT_TIME_STAMP, 8) && VerifyField<uint64_t>(verifier, VT_TIME_OFFSET, 8) &&
330 VerifyField<uint8_t>(verifier, VT_TYPE, 1) && VerifyField<uint32_t>(verifier, VT_INDEX, 4) &&
331 VerifyField<uint64_t>(verifier, VT_ADDRESS, 8) && VerifyField<uint32_t>(verifier, VT_SIZE, 4) &&
332 VerifyField<uint8_t>(verifier, VT_NO_RESPONSE, 1) && VerifyOffset(verifier, VT_DATA) && verifier.VerifyVector(data()) &&
333 VerifyOffset(verifier, VT_BYTE_ENABLE) && verifier.VerifyVector(byte_enable()) && verifier.EndTable();
337struct BusOpMsgBuilder {
338 typedef BusOpMsg Table;
339 ::flatbuffers::FlatBufferBuilder& fbb_;
340 ::flatbuffers::uoffset_t start_;
341 void add_id(uint32_t
id) { fbb_.AddElement<uint32_t>(BusOpMsg::VT_ID, id, 0); }
342 void add_time_stamp(uint64_t time_stamp) { fbb_.AddElement<uint64_t>(BusOpMsg::VT_TIME_STAMP, time_stamp, 0); }
343 void add_time_offset(uint64_t time_offset) { fbb_.AddElement<uint64_t>(BusOpMsg::VT_TIME_OFFSET, time_offset, 0); }
344 void add_type(scc::tcp4tlm::BusAccessType type) { fbb_.AddElement<uint8_t>(BusOpMsg::VT_TYPE,
static_cast<uint8_t
>(type), 0); }
345 void add_index(uint32_t index) { fbb_.AddElement<uint32_t>(BusOpMsg::VT_INDEX, index, 0); }
346 void add_address(uint64_t address) { fbb_.AddElement<uint64_t>(BusOpMsg::VT_ADDRESS, address, 0); }
347 void add_size(uint32_t size) { fbb_.AddElement<uint32_t>(BusOpMsg::VT_SIZE, size, 0); }
348 void add_no_response(
bool no_response) { fbb_.AddElement<uint8_t>(BusOpMsg::VT_NO_RESPONSE,
static_cast<uint8_t
>(no_response), 0); }
349 void add_data(::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> data) { fbb_.AddOffset(BusOpMsg::VT_DATA, data); }
350 void add_byte_enable(::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> byte_enable) {
351 fbb_.AddOffset(BusOpMsg::VT_BYTE_ENABLE, byte_enable);
353 explicit BusOpMsgBuilder(::flatbuffers::FlatBufferBuilder& _fbb)
355 start_ = fbb_.StartTable();
357 ::flatbuffers::Offset<BusOpMsg> Finish() {
358 const auto end = fbb_.EndTable(start_);
359 auto o = ::flatbuffers::Offset<BusOpMsg>(end);
364inline ::flatbuffers::Offset<BusOpMsg> CreateBusOpMsg(::flatbuffers::FlatBufferBuilder& _fbb, uint32_t
id = 0, uint64_t time_stamp = 0,
365 uint64_t time_offset = 0,
366 scc::tcp4tlm::BusAccessType type = scc::tcp4tlm::BusAccessType_NORMAL_ACC,
367 uint32_t index = 0, uint64_t address = 0, uint32_t size = 0,
bool no_response =
false,
368 ::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> data = 0,
369 ::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> byte_enable = 0) {
371 builder_.add_address(address);
372 builder_.add_time_offset(time_offset);
373 builder_.add_time_stamp(time_stamp);
374 builder_.add_byte_enable(byte_enable);
375 builder_.add_data(data);
376 builder_.add_size(size);
377 builder_.add_index(index);
379 builder_.add_no_response(no_response);
380 builder_.add_type(type);
381 return builder_.Finish();
384inline ::flatbuffers::Offset<BusOpMsg> CreateBusOpMsgDirect(::flatbuffers::FlatBufferBuilder& _fbb, uint32_t
id = 0,
385 uint64_t time_stamp = 0, uint64_t time_offset = 0,
386 scc::tcp4tlm::BusAccessType type = scc::tcp4tlm::BusAccessType_NORMAL_ACC,
387 uint32_t index = 0, uint64_t address = 0, uint32_t size = 0,
388 bool no_response =
false,
const std::vector<uint8_t>* data =
nullptr,
389 const std::vector<uint8_t>* byte_enable =
nullptr) {
390 auto data__ = data ? _fbb.CreateVector<uint8_t>(*data) : 0;
391 auto byte_enable__ = byte_enable ? _fbb.CreateVector<uint8_t>(*byte_enable) : 0;
392 return scc::tcp4tlm::CreateBusOpMsg(_fbb,
id, time_stamp, time_offset, type, index, address, size, no_response, data__, byte_enable__);
395struct ResponseMsg FLATBUFFERS_FINAL_CLASS :
private ::flatbuffers::Table {
396 typedef ResponseMsgBuilder Builder;
397 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE { VT_STATUS = 4, VT_REQ_ID = 6 };
398 scc::tcp4tlm::ResponseStatus status()
const {
return static_cast<scc::tcp4tlm::ResponseStatus
>(GetField<uint8_t>(VT_STATUS, 0)); }
399 uint32_t req_id()
const {
return GetField<uint32_t>(VT_REQ_ID, 0); }
400 bool Verify(::flatbuffers::Verifier& verifier)
const {
401 return VerifyTableStart(verifier) && VerifyField<uint8_t>(verifier, VT_STATUS, 1) &&
402 VerifyField<uint32_t>(verifier, VT_REQ_ID, 4) && verifier.EndTable();
406struct ResponseMsgBuilder {
407 typedef ResponseMsg Table;
408 ::flatbuffers::FlatBufferBuilder& fbb_;
409 ::flatbuffers::uoffset_t start_;
410 void add_status(scc::tcp4tlm::ResponseStatus status) {
411 fbb_.AddElement<uint8_t>(ResponseMsg::VT_STATUS,
static_cast<uint8_t
>(status), 0);
413 void add_req_id(uint32_t req_id) { fbb_.AddElement<uint32_t>(ResponseMsg::VT_REQ_ID, req_id, 0); }
414 explicit ResponseMsgBuilder(::flatbuffers::FlatBufferBuilder& _fbb)
416 start_ = fbb_.StartTable();
418 ::flatbuffers::Offset<ResponseMsg> Finish() {
419 const auto end = fbb_.EndTable(start_);
420 auto o = ::flatbuffers::Offset<ResponseMsg>(end);
425inline ::flatbuffers::Offset<ResponseMsg> CreateResponseMsg(::flatbuffers::FlatBufferBuilder& _fbb,
426 scc::tcp4tlm::ResponseStatus status = scc::tcp4tlm::ResponseStatus_OK,
427 uint32_t req_id = 0) {
429 builder_.add_req_id(req_id);
430 builder_.add_status(status);
431 return builder_.Finish();
434struct BusDataMsg FLATBUFFERS_FINAL_CLASS :
private ::flatbuffers::Table {
435 typedef BusDataMsgBuilder Builder;
436 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE { VT_STATUS = 4, VT_REQ_ID = 6, VT_DATA = 8 };
437 scc::tcp4tlm::ResponseStatus status()
const {
return static_cast<scc::tcp4tlm::ResponseStatus
>(GetField<uint8_t>(VT_STATUS, 0)); }
438 uint32_t req_id()
const {
return GetField<uint32_t>(VT_REQ_ID, 0); }
439 const ::flatbuffers::Vector<uint8_t>* data()
const {
return GetPointer<const ::flatbuffers::Vector<uint8_t>*>(VT_DATA); }
440 bool Verify(::flatbuffers::Verifier& verifier)
const {
441 return VerifyTableStart(verifier) && VerifyField<uint8_t>(verifier, VT_STATUS, 1) &&
442 VerifyField<uint32_t>(verifier, VT_REQ_ID, 4) && VerifyOffset(verifier, VT_DATA) && verifier.VerifyVector(data()) &&
447struct BusDataMsgBuilder {
448 typedef BusDataMsg Table;
449 ::flatbuffers::FlatBufferBuilder& fbb_;
450 ::flatbuffers::uoffset_t start_;
451 void add_status(scc::tcp4tlm::ResponseStatus status) {
452 fbb_.AddElement<uint8_t>(BusDataMsg::VT_STATUS,
static_cast<uint8_t
>(status), 0);
454 void add_req_id(uint32_t req_id) { fbb_.AddElement<uint32_t>(BusDataMsg::VT_REQ_ID, req_id, 0); }
455 void add_data(::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> data) { fbb_.AddOffset(BusDataMsg::VT_DATA, data); }
456 explicit BusDataMsgBuilder(::flatbuffers::FlatBufferBuilder& _fbb)
458 start_ = fbb_.StartTable();
460 ::flatbuffers::Offset<BusDataMsg> Finish() {
461 const auto end = fbb_.EndTable(start_);
462 auto o = ::flatbuffers::Offset<BusDataMsg>(end);
467inline ::flatbuffers::Offset<BusDataMsg> CreateBusDataMsg(::flatbuffers::FlatBufferBuilder& _fbb,
468 scc::tcp4tlm::ResponseStatus status = scc::tcp4tlm::ResponseStatus_OK,
470 ::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> data = 0) {
472 builder_.add_data(data);
473 builder_.add_req_id(req_id);
474 builder_.add_status(status);
475 return builder_.Finish();
478inline ::flatbuffers::Offset<BusDataMsg> CreateBusDataMsgDirect(::flatbuffers::FlatBufferBuilder& _fbb,
479 scc::tcp4tlm::ResponseStatus status = scc::tcp4tlm::ResponseStatus_OK,
480 uint32_t req_id = 0,
const std::vector<uint8_t>* data =
nullptr) {
481 auto data__ = data ? _fbb.CreateVector<uint8_t>(*data) : 0;
482 return scc::tcp4tlm::CreateBusDataMsg(_fbb, status, req_id, data__);
485struct SigOpMsg FLATBUFFERS_FINAL_CLASS :
private ::flatbuffers::Table {
486 typedef SigOpMsgBuilder Builder;
487 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE { VT_ID = 4, VT_TIME_STAMP = 6, VT_INDEX = 8, VT_VALUE = 10 };
488 uint32_t id()
const {
return GetField<uint32_t>(VT_ID, 0); }
489 uint64_t time_stamp()
const {
return GetField<uint64_t>(VT_TIME_STAMP, 0); }
490 uint32_t index()
const {
return GetField<uint32_t>(VT_INDEX, 0); }
491 uint8_t value()
const {
return GetField<uint8_t>(VT_VALUE, 0); }
492 bool Verify(::flatbuffers::Verifier& verifier)
const {
493 return VerifyTableStart(verifier) && VerifyField<uint32_t>(verifier, VT_ID, 4) &&
494 VerifyField<uint64_t>(verifier, VT_TIME_STAMP, 8) && VerifyField<uint32_t>(verifier, VT_INDEX, 4) &&
495 VerifyField<uint8_t>(verifier, VT_VALUE, 1) && verifier.EndTable();
499struct SigOpMsgBuilder {
500 typedef SigOpMsg Table;
501 ::flatbuffers::FlatBufferBuilder& fbb_;
502 ::flatbuffers::uoffset_t start_;
503 void add_id(uint32_t
id) { fbb_.AddElement<uint32_t>(SigOpMsg::VT_ID, id, 0); }
504 void add_time_stamp(uint64_t time_stamp) { fbb_.AddElement<uint64_t>(SigOpMsg::VT_TIME_STAMP, time_stamp, 0); }
505 void add_index(uint32_t index) { fbb_.AddElement<uint32_t>(SigOpMsg::VT_INDEX, index, 0); }
506 void add_value(uint8_t value) { fbb_.AddElement<uint8_t>(SigOpMsg::VT_VALUE, value, 0); }
507 explicit SigOpMsgBuilder(::flatbuffers::FlatBufferBuilder& _fbb)
509 start_ = fbb_.StartTable();
511 ::flatbuffers::Offset<SigOpMsg> Finish() {
512 const auto end = fbb_.EndTable(start_);
513 auto o = ::flatbuffers::Offset<SigOpMsg>(end);
518inline ::flatbuffers::Offset<SigOpMsg> CreateSigOpMsg(::flatbuffers::FlatBufferBuilder& _fbb, uint32_t
id = 0, uint64_t time_stamp = 0,
519 uint32_t index = 0, uint8_t value = 0) {
521 builder_.add_time_stamp(time_stamp);
522 builder_.add_index(index);
524 builder_.add_value(value);
525 return builder_.Finish();
528struct LogMsg FLATBUFFERS_FINAL_CLASS :
private ::flatbuffers::Table {
529 typedef LogMsgBuilder Builder;
530 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE { VT_ID = 4, VT_MSG = 6 };
531 uint32_t id()
const {
return GetField<uint32_t>(VT_ID, 0); }
532 const ::flatbuffers::String* msg()
const {
return GetPointer<const ::flatbuffers::String*>(VT_MSG); }
533 bool Verify(::flatbuffers::Verifier& verifier)
const {
534 return VerifyTableStart(verifier) && VerifyField<uint32_t>(verifier, VT_ID, 4) && VerifyOffset(verifier, VT_MSG) &&
535 verifier.VerifyString(msg()) && verifier.EndTable();
539struct LogMsgBuilder {
540 typedef LogMsg Table;
541 ::flatbuffers::FlatBufferBuilder& fbb_;
542 ::flatbuffers::uoffset_t start_;
543 void add_id(uint32_t
id) { fbb_.AddElement<uint32_t>(LogMsg::VT_ID, id, 0); }
544 void add_msg(::flatbuffers::Offset<::flatbuffers::String> msg) { fbb_.AddOffset(LogMsg::VT_MSG, msg); }
545 explicit LogMsgBuilder(::flatbuffers::FlatBufferBuilder& _fbb)
547 start_ = fbb_.StartTable();
549 ::flatbuffers::Offset<LogMsg> Finish() {
550 const auto end = fbb_.EndTable(start_);
551 auto o = ::flatbuffers::Offset<LogMsg>(end);
556inline ::flatbuffers::Offset<LogMsg> CreateLogMsg(::flatbuffers::FlatBufferBuilder& _fbb, uint32_t
id = 0,
557 ::flatbuffers::Offset<::flatbuffers::String> msg = 0) {
559 builder_.add_msg(msg);
561 return builder_.Finish();
564inline ::flatbuffers::Offset<LogMsg> CreateLogMsgDirect(::flatbuffers::FlatBufferBuilder& _fbb, uint32_t
id = 0,
565 const char* msg =
nullptr) {
566 auto msg__ = msg ? _fbb.CreateString(msg) : 0;
567 return scc::tcp4tlm::CreateLogMsg(_fbb,
id, msg__);
570struct RequestEnvelope FLATBUFFERS_FINAL_CLASS :
private ::flatbuffers::Table {
571 typedef RequestEnvelopeBuilder Builder;
572 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE { VT_PAYLOAD_TYPE = 4, VT_PAYLOAD = 6 };
573 scc::tcp4tlm::RequestPayload payload_type()
const {
574 return static_cast<scc::tcp4tlm::RequestPayload
>(GetField<uint8_t>(VT_PAYLOAD_TYPE, 0));
576 const void* payload()
const {
return GetPointer<const void*>(VT_PAYLOAD); }
577 template <
typename T>
const T* payload_as()
const;
578 const scc::tcp4tlm::NotifyEndpointMsg* payload_as_NotifyEndpointMsg()
const {
579 return payload_type() == scc::tcp4tlm::RequestPayload_NotifyEndpointMsg
580 ?
static_cast<const scc::tcp4tlm::NotifyEndpointMsg*
>(payload())
583 const scc::tcp4tlm::NotifyShutdownMsg* payload_as_NotifyShutdownMsg()
const {
584 return payload_type() == scc::tcp4tlm::RequestPayload_NotifyShutdownMsg
585 ?
static_cast<const scc::tcp4tlm::NotifyShutdownMsg*
>(payload())
588 const scc::tcp4tlm::SyncMsg* payload_as_SyncMsg()
const {
589 return payload_type() == scc::tcp4tlm::RequestPayload_SyncMsg ?
static_cast<const scc::tcp4tlm::SyncMsg*
>(payload()) : nullptr;
591 const scc::tcp4tlm::BusOpMsg* payload_as_BusOpMsg()
const {
592 return payload_type() == scc::tcp4tlm::RequestPayload_BusOpMsg ?
static_cast<const scc::tcp4tlm::BusOpMsg*
>(payload()) : nullptr;
594 const scc::tcp4tlm::SigOpMsg* payload_as_SigOpMsg()
const {
595 return payload_type() == scc::tcp4tlm::RequestPayload_SigOpMsg ?
static_cast<const scc::tcp4tlm::SigOpMsg*
>(payload()) : nullptr;
597 const scc::tcp4tlm::LogMsg* payload_as_LogMsg()
const {
598 return payload_type() == scc::tcp4tlm::RequestPayload_LogMsg ?
static_cast<const scc::tcp4tlm::LogMsg*
>(payload()) : nullptr;
600 bool Verify(::flatbuffers::Verifier& verifier)
const {
601 return VerifyTableStart(verifier) && VerifyField<uint8_t>(verifier, VT_PAYLOAD_TYPE, 1) && VerifyOffset(verifier, VT_PAYLOAD) &&
602 VerifyRequestPayload(verifier, payload(), payload_type()) && verifier.EndTable();
606template <>
inline const scc::tcp4tlm::NotifyEndpointMsg* RequestEnvelope::payload_as<scc::tcp4tlm::NotifyEndpointMsg>()
const {
607 return payload_as_NotifyEndpointMsg();
610template <>
inline const scc::tcp4tlm::NotifyShutdownMsg* RequestEnvelope::payload_as<scc::tcp4tlm::NotifyShutdownMsg>()
const {
611 return payload_as_NotifyShutdownMsg();
614template <>
inline const scc::tcp4tlm::SyncMsg* RequestEnvelope::payload_as<scc::tcp4tlm::SyncMsg>()
const {
return payload_as_SyncMsg(); }
616template <>
inline const scc::tcp4tlm::BusOpMsg* RequestEnvelope::payload_as<scc::tcp4tlm::BusOpMsg>()
const {
617 return payload_as_BusOpMsg();
620template <>
inline const scc::tcp4tlm::SigOpMsg* RequestEnvelope::payload_as<scc::tcp4tlm::SigOpMsg>()
const {
621 return payload_as_SigOpMsg();
624template <>
inline const scc::tcp4tlm::LogMsg* RequestEnvelope::payload_as<scc::tcp4tlm::LogMsg>()
const {
return payload_as_LogMsg(); }
626struct RequestEnvelopeBuilder {
627 typedef RequestEnvelope Table;
628 ::flatbuffers::FlatBufferBuilder& fbb_;
629 ::flatbuffers::uoffset_t start_;
630 void add_payload_type(scc::tcp4tlm::RequestPayload payload_type) {
631 fbb_.AddElement<uint8_t>(RequestEnvelope::VT_PAYLOAD_TYPE,
static_cast<uint8_t
>(payload_type), 0);
633 void add_payload(::flatbuffers::Offset<void> payload) { fbb_.AddOffset(RequestEnvelope::VT_PAYLOAD, payload); }
634 explicit RequestEnvelopeBuilder(::flatbuffers::FlatBufferBuilder& _fbb)
636 start_ = fbb_.StartTable();
638 ::flatbuffers::Offset<RequestEnvelope> Finish() {
639 const auto end = fbb_.EndTable(start_);
640 auto o = ::flatbuffers::Offset<RequestEnvelope>(end);
645inline ::flatbuffers::Offset<RequestEnvelope>
646CreateRequestEnvelope(::flatbuffers::FlatBufferBuilder& _fbb, scc::tcp4tlm::RequestPayload payload_type = scc::tcp4tlm::RequestPayload_NONE,
647 ::flatbuffers::Offset<void> payload = 0) {
649 builder_.add_payload(payload);
650 builder_.add_payload_type(payload_type);
651 return builder_.Finish();
654struct ResponseEnvelope FLATBUFFERS_FINAL_CLASS :
private ::flatbuffers::Table {
655 typedef ResponseEnvelopeBuilder Builder;
656 enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE { VT_PAYLOAD_TYPE = 4, VT_PAYLOAD = 6 };
657 scc::tcp4tlm::ResponsePayload payload_type()
const {
658 return static_cast<scc::tcp4tlm::ResponsePayload
>(GetField<uint8_t>(VT_PAYLOAD_TYPE, 0));
660 const void* payload()
const {
return GetPointer<const void*>(VT_PAYLOAD); }
661 template <
typename T>
const T* payload_as()
const;
662 const scc::tcp4tlm::ResponseMsg* payload_as_ResponseMsg()
const {
663 return payload_type() == scc::tcp4tlm::ResponsePayload_ResponseMsg ?
static_cast<const scc::tcp4tlm::ResponseMsg*
>(payload())
666 const scc::tcp4tlm::BusDataMsg* payload_as_BusDataMsg()
const {
667 return payload_type() == scc::tcp4tlm::ResponsePayload_BusDataMsg ?
static_cast<const scc::tcp4tlm::BusDataMsg*
>(payload())
670 bool Verify(::flatbuffers::Verifier& verifier)
const {
671 return VerifyTableStart(verifier) && VerifyField<uint8_t>(verifier, VT_PAYLOAD_TYPE, 1) && VerifyOffset(verifier, VT_PAYLOAD) &&
672 VerifyResponsePayload(verifier, payload(), payload_type()) && verifier.EndTable();
676template <>
inline const scc::tcp4tlm::ResponseMsg* ResponseEnvelope::payload_as<scc::tcp4tlm::ResponseMsg>()
const {
677 return payload_as_ResponseMsg();
680template <>
inline const scc::tcp4tlm::BusDataMsg* ResponseEnvelope::payload_as<scc::tcp4tlm::BusDataMsg>()
const {
681 return payload_as_BusDataMsg();
684struct ResponseEnvelopeBuilder {
685 typedef ResponseEnvelope Table;
686 ::flatbuffers::FlatBufferBuilder& fbb_;
687 ::flatbuffers::uoffset_t start_;
688 void add_payload_type(scc::tcp4tlm::ResponsePayload payload_type) {
689 fbb_.AddElement<uint8_t>(ResponseEnvelope::VT_PAYLOAD_TYPE,
static_cast<uint8_t
>(payload_type), 0);
691 void add_payload(::flatbuffers::Offset<void> payload) { fbb_.AddOffset(ResponseEnvelope::VT_PAYLOAD, payload); }
692 explicit ResponseEnvelopeBuilder(::flatbuffers::FlatBufferBuilder& _fbb)
694 start_ = fbb_.StartTable();
696 ::flatbuffers::Offset<ResponseEnvelope> Finish() {
697 const auto end = fbb_.EndTable(start_);
698 auto o = ::flatbuffers::Offset<ResponseEnvelope>(end);
703inline ::flatbuffers::Offset<ResponseEnvelope>
704CreateResponseEnvelope(::flatbuffers::FlatBufferBuilder& _fbb,
705 scc::tcp4tlm::ResponsePayload payload_type = scc::tcp4tlm::ResponsePayload_NONE,
706 ::flatbuffers::Offset<void> payload = 0) {
708 builder_.add_payload(payload);
709 builder_.add_payload_type(payload_type);
710 return builder_.Finish();
713inline bool VerifyRequestPayload(::flatbuffers::Verifier& verifier,
const void* obj, RequestPayload type) {
715 case RequestPayload_NONE: {
718 case RequestPayload_NotifyEndpointMsg: {
719 auto ptr =
reinterpret_cast<const scc::tcp4tlm::NotifyEndpointMsg*
>(obj);
720 return verifier.VerifyTable(ptr);
722 case RequestPayload_NotifyShutdownMsg: {
723 auto ptr =
reinterpret_cast<const scc::tcp4tlm::NotifyShutdownMsg*
>(obj);
724 return verifier.VerifyTable(ptr);
726 case RequestPayload_SyncMsg: {
727 auto ptr =
reinterpret_cast<const scc::tcp4tlm::SyncMsg*
>(obj);
728 return verifier.VerifyTable(ptr);
730 case RequestPayload_BusOpMsg: {
731 auto ptr =
reinterpret_cast<const scc::tcp4tlm::BusOpMsg*
>(obj);
732 return verifier.VerifyTable(ptr);
734 case RequestPayload_SigOpMsg: {
735 auto ptr =
reinterpret_cast<const scc::tcp4tlm::SigOpMsg*
>(obj);
736 return verifier.VerifyTable(ptr);
738 case RequestPayload_LogMsg: {
739 auto ptr =
reinterpret_cast<const scc::tcp4tlm::LogMsg*
>(obj);
740 return verifier.VerifyTable(ptr);
747inline bool VerifyRequestPayloadVector(::flatbuffers::Verifier& verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>>* values,
748 const ::flatbuffers::Vector<uint8_t>* types) {
749 if(!values || !types)
750 return !values && !types;
751 if(values->size() != types->size())
753 for(::flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
754 if(!VerifyRequestPayload(verifier, values->Get(i), types->GetEnum<RequestPayload>(i))) {
761inline bool VerifyResponsePayload(::flatbuffers::Verifier& verifier,
const void* obj, ResponsePayload type) {
763 case ResponsePayload_NONE: {
766 case ResponsePayload_ResponseMsg: {
767 auto ptr =
reinterpret_cast<const scc::tcp4tlm::ResponseMsg*
>(obj);
768 return verifier.VerifyTable(ptr);
770 case ResponsePayload_BusDataMsg: {
771 auto ptr =
reinterpret_cast<const scc::tcp4tlm::BusDataMsg*
>(obj);
772 return verifier.VerifyTable(ptr);
779inline bool VerifyResponsePayloadVector(::flatbuffers::Verifier& verifier, const ::flatbuffers::Vector<::flatbuffers::Offset<void>>* values,
780 const ::flatbuffers::Vector<uint8_t>* types) {
781 if(!values || !types)
782 return !values && !types;
783 if(values->size() != types->size())
785 for(::flatbuffers::uoffset_t i = 0; i < values->size(); ++i) {
786 if(!VerifyResponsePayload(verifier, values->Get(i), types->GetEnum<ResponsePayload>(i))) {