TT-MLIR
types_generated.h
Go to the documentation of this file.
1 // automatically generated by the FlatBuffers compiler, do not modify
2 
3 
4 #ifndef FLATBUFFERS_GENERATED_TYPES_TT_TARGET_H_
5 #define FLATBUFFERS_GENERATED_TYPES_TT_TARGET_H_
6 
7 #include "flatbuffers/flatbuffers.h"
8 
9 // Ensure the included flatbuffers.h is the same version as when this file was
10 // generated, otherwise it may not be compatible.
11 static_assert(FLATBUFFERS_VERSION_MAJOR == 24 &&
12  FLATBUFFERS_VERSION_MINOR == 3 &&
13  FLATBUFFERS_VERSION_REVISION == 25,
14  "Non-compatible flatbuffers version included");
15 
16 namespace tt {
17 namespace target {
18 
19 struct Dim2d;
20 
21 struct Dim2dRange;
22 
23 struct ChipDesc;
24 struct ChipDescBuilder;
25 
26 struct ChipCoord;
27 
28 struct ChipChannel;
29 
30 struct ChipPhysicalCores;
31 struct ChipPhysicalCoresBuilder;
32 
33 struct CPUDesc;
34 struct CPUDescBuilder;
35 
36 struct SystemDesc;
37 struct SystemDescBuilder;
38 
39 struct DeviceRef;
40 struct DeviceRefBuilder;
41 
42 struct EventRef;
43 struct EventRefBuilder;
44 
45 struct DynamicLib;
46 struct DynamicLibBuilder;
47 
48 enum class Arch : uint32_t {
49  Grayskull = 0,
50  Wormhole_b0 = 1,
51  Blackhole = 2,
52  MIN = Grayskull,
53  MAX = Blackhole
54 };
55 
56 inline const Arch (&EnumValuesArch())[3] {
57  static const Arch values[] = {
61  };
62  return values;
63 }
64 
65 inline const char * const *EnumNamesArch() {
66  static const char * const names[4] = {
67  "Grayskull",
68  "Wormhole_b0",
69  "Blackhole",
70  nullptr
71  };
72  return names;
73 }
74 
75 inline const char *EnumNameArch(Arch e) {
76  if (::flatbuffers::IsOutRange(e, Arch::Grayskull, Arch::Blackhole)) return "";
77  const size_t index = static_cast<size_t>(e);
78  return EnumNamesArch()[index];
79 }
80 
81 enum class DataType : uint16_t {
82  Float32 = 0,
83  Float16 = 1,
84  BFloat16 = 2,
85  BFP_Float8 = 3,
86  BFP_BFloat8 = 4,
87  BFP_Float4 = 5,
88  BFP_BFloat4 = 6,
89  BFP_Float2 = 7,
90  BFP_BFloat2 = 8,
91  UInt32 = 9,
92  UInt16 = 10,
93  UInt8 = 11,
94  MIN = Float32,
95  MAX = UInt8
96 };
97 
98 inline const DataType (&EnumValuesDataType())[12] {
99  static const DataType values[] = {
112  };
113  return values;
114 }
115 
116 inline const char * const *EnumNamesDataType() {
117  static const char * const names[13] = {
118  "Float32",
119  "Float16",
120  "BFloat16",
121  "BFP_Float8",
122  "BFP_BFloat8",
123  "BFP_Float4",
124  "BFP_BFloat4",
125  "BFP_Float2",
126  "BFP_BFloat2",
127  "UInt32",
128  "UInt16",
129  "UInt8",
130  nullptr
131  };
132  return names;
133 }
134 
135 inline const char *EnumNameDataType(DataType e) {
136  if (::flatbuffers::IsOutRange(e, DataType::Float32, DataType::UInt8)) return "";
137  const size_t index = static_cast<size_t>(e);
138  return EnumNamesDataType()[index];
139 }
140 
141 enum class OOBVal : uint16_t {
142  Undef = 0,
143  Zero = 1,
144  One = 2,
145  Inf = 3,
146  NegInf = 4,
147  MIN = Undef,
148  MAX = NegInf
149 };
150 
151 inline const OOBVal (&EnumValuesOOBVal())[5] {
152  static const OOBVal values[] = {
154  OOBVal::Zero,
155  OOBVal::One,
156  OOBVal::Inf,
158  };
159  return values;
160 }
161 
162 inline const char * const *EnumNamesOOBVal() {
163  static const char * const names[6] = {
164  "Undef",
165  "Zero",
166  "One",
167  "Inf",
168  "NegInf",
169  nullptr
170  };
171  return names;
172 }
173 
174 inline const char *EnumNameOOBVal(OOBVal e) {
175  if (::flatbuffers::IsOutRange(e, OOBVal::Undef, OOBVal::NegInf)) return "";
176  const size_t index = static_cast<size_t>(e);
177  return EnumNamesOOBVal()[index];
178 }
179 
180 enum class MemorySpace : uint16_t {
181  System = 0,
182  SystemMMIO = 1,
183  DeviceDRAM = 2,
184  DeviceL1 = 3,
185  MIN = System,
186  MAX = DeviceL1
187 };
188 
189 inline const MemorySpace (&EnumValuesMemorySpace())[4] {
190  static const MemorySpace values[] = {
195  };
196  return values;
197 }
198 
199 inline const char * const *EnumNamesMemorySpace() {
200  static const char * const names[5] = {
201  "System",
202  "SystemMMIO",
203  "DeviceDRAM",
204  "DeviceL1",
205  nullptr
206  };
207  return names;
208 }
209 
210 inline const char *EnumNameMemorySpace(MemorySpace e) {
211  if (::flatbuffers::IsOutRange(e, MemorySpace::System, MemorySpace::DeviceL1)) return "";
212  const size_t index = static_cast<size_t>(e);
213  return EnumNamesMemorySpace()[index];
214 }
215 
216 enum class ChipCapability : uint32_t {
217  PCIE = 1,
218  HostMMIO = 2,
219  NONE = 0,
220  ANY = 3
221 };
222 FLATBUFFERS_DEFINE_BITMASK_OPERATORS(ChipCapability, uint32_t)
223 
225  static const ChipCapability values[] = {
228  };
229  return values;
230 }
231 
232 inline const char * const *EnumNamesChipCapability() {
233  static const char * const names[3] = {
234  "PCIE",
235  "HostMMIO",
236  nullptr
237  };
238  return names;
239 }
240 
241 inline const char *EnumNameChipCapability(ChipCapability e) {
242  if (::flatbuffers::IsOutRange(e, ChipCapability::PCIE, ChipCapability::HostMMIO)) return "";
243  const size_t index = static_cast<size_t>(e) - static_cast<size_t>(ChipCapability::PCIE);
244  return EnumNamesChipCapability()[index];
245 }
246 
247 enum class TensorLayout : uint16_t {
248  RowMajor = 0,
249  Tile = 1,
250  Invalid = 2,
251  MIN = RowMajor,
252  MAX = Invalid
253 };
254 
255 inline const TensorLayout (&EnumValuesTensorLayout())[3] {
256  static const TensorLayout values[] = {
260  };
261  return values;
262 }
263 
264 inline const char * const *EnumNamesTensorLayout() {
265  static const char * const names[4] = {
266  "RowMajor",
267  "Tile",
268  "Invalid",
269  nullptr
270  };
271  return names;
272 }
273 
274 inline const char *EnumNameTensorLayout(TensorLayout e) {
275  if (::flatbuffers::IsOutRange(e, TensorLayout::RowMajor, TensorLayout::Invalid)) return "";
276  const size_t index = static_cast<size_t>(e);
277  return EnumNamesTensorLayout()[index];
278 }
279 
280 enum class BufferType : uint16_t {
281  DRAM = 0,
282  L1 = 1,
283  SystemMemory = 2,
284  L1Small = 3,
285  Trace = 4,
286  MIN = DRAM,
287  MAX = Trace
288 };
289 
290 inline const BufferType (&EnumValuesBufferType())[5] {
291  static const BufferType values[] = {
297  };
298  return values;
299 }
300 
301 inline const char * const *EnumNamesBufferType() {
302  static const char * const names[6] = {
303  "DRAM",
304  "L1",
305  "SystemMemory",
306  "L1Small",
307  "Trace",
308  nullptr
309  };
310  return names;
311 }
312 
313 inline const char *EnumNameBufferType(BufferType e) {
314  if (::flatbuffers::IsOutRange(e, BufferType::DRAM, BufferType::Trace)) return "";
315  const size_t index = static_cast<size_t>(e);
316  return EnumNamesBufferType()[index];
317 }
318 
319 enum class CPURole : uint8_t {
320  Host = 0,
321  Device = 1,
322  MIN = Host,
323  MAX = Device
324 };
325 
326 inline const CPURole (&EnumValuesCPURole())[2] {
327  static const CPURole values[] = {
330  };
331  return values;
332 }
333 
334 inline const char * const *EnumNamesCPURole() {
335  static const char * const names[3] = {
336  "Host",
337  "Device",
338  nullptr
339  };
340  return names;
341 }
342 
343 inline const char *EnumNameCPURole(CPURole e) {
344  if (::flatbuffers::IsOutRange(e, CPURole::Host, CPURole::Device)) return "";
345  const size_t index = static_cast<size_t>(e);
346  return EnumNamesCPURole()[index];
347 }
348 
349 enum class MathFidelity : uint8_t {
350  LoFi = 0,
351  HiFi2 = 2,
352  HiFi3 = 3,
353  HiFi4 = 4,
354  MIN = LoFi,
355  MAX = HiFi4
356 };
357 
358 inline const MathFidelity (&EnumValuesMathFidelity())[4] {
359  static const MathFidelity values[] = {
364  };
365  return values;
366 }
367 
368 inline const char * const *EnumNamesMathFidelity() {
369  static const char * const names[6] = {
370  "LoFi",
371  "",
372  "HiFi2",
373  "HiFi3",
374  "HiFi4",
375  nullptr
376  };
377  return names;
378 }
379 
380 inline const char *EnumNameMathFidelity(MathFidelity e) {
381  if (::flatbuffers::IsOutRange(e, MathFidelity::LoFi, MathFidelity::HiFi4)) return "";
382  const size_t index = static_cast<size_t>(e);
383  return EnumNamesMathFidelity()[index];
384 }
385 
387  private:
388  int32_t y_;
389  int32_t x_;
390 
391  public:
392  struct Traits;
393  Dim2d()
394  : y_(0),
395  x_(0) {
396  }
397  Dim2d(int32_t _y, int32_t _x)
398  : y_(::flatbuffers::EndianScalar(_y)),
399  x_(::flatbuffers::EndianScalar(_x)) {
400  }
401  int32_t y() const {
402  return ::flatbuffers::EndianScalar(y_);
403  }
404  int32_t x() const {
405  return ::flatbuffers::EndianScalar(x_);
406  }
407 };
409 
411  using type = Dim2d;
412 };
413 
415  private:
416  tt::target::Dim2d loc_;
417  tt::target::Dim2d size_;
418 
419  public:
420  struct Traits;
421  Dim2dRange()
422  : loc_(),
423  size_() {
424  }
425  Dim2dRange(const tt::target::Dim2d &_loc, const tt::target::Dim2d &_size)
426  : loc_(_loc),
427  size_(_size) {
428  }
429  const tt::target::Dim2d &loc() const {
430  return loc_;
431  }
432  const tt::target::Dim2d &size() const {
433  return size_;
434  }
435 };
436 FLATBUFFERS_STRUCT_END(Dim2dRange, 16);
437 
439  using type = Dim2dRange;
440 };
441 
443  private:
444  uint32_t rack_;
445  uint32_t shelf_;
446  uint32_t y_;
447  uint32_t x_;
448 
449  public:
450  struct Traits;
451  ChipCoord()
452  : rack_(0),
453  shelf_(0),
454  y_(0),
455  x_(0) {
456  }
457  ChipCoord(uint32_t _rack, uint32_t _shelf, uint32_t _y, uint32_t _x)
458  : rack_(::flatbuffers::EndianScalar(_rack)),
459  shelf_(::flatbuffers::EndianScalar(_shelf)),
460  y_(::flatbuffers::EndianScalar(_y)),
461  x_(::flatbuffers::EndianScalar(_x)) {
462  }
463  uint32_t rack() const {
464  return ::flatbuffers::EndianScalar(rack_);
465  }
466  uint32_t shelf() const {
467  return ::flatbuffers::EndianScalar(shelf_);
468  }
469  uint32_t y() const {
470  return ::flatbuffers::EndianScalar(y_);
471  }
472  uint32_t x() const {
473  return ::flatbuffers::EndianScalar(x_);
474  }
475 };
476 FLATBUFFERS_STRUCT_END(ChipCoord, 16);
477 
479  using type = ChipCoord;
480 };
481 
483  private:
484  uint32_t device_id0_;
485  tt::target::Dim2d ethernet_core_coord0_;
486  uint32_t device_id1_;
487  tt::target::Dim2d ethernet_core_coord1_;
488 
489  public:
490  struct Traits;
491  ChipChannel()
492  : device_id0_(0),
493  ethernet_core_coord0_(),
494  device_id1_(0),
495  ethernet_core_coord1_() {
496  }
497  ChipChannel(uint32_t _device_id0, const tt::target::Dim2d &_ethernet_core_coord0, uint32_t _device_id1, const tt::target::Dim2d &_ethernet_core_coord1)
498  : device_id0_(::flatbuffers::EndianScalar(_device_id0)),
499  ethernet_core_coord0_(_ethernet_core_coord0),
500  device_id1_(::flatbuffers::EndianScalar(_device_id1)),
501  ethernet_core_coord1_(_ethernet_core_coord1) {
502  }
503  uint32_t device_id0() const {
504  return ::flatbuffers::EndianScalar(device_id0_);
505  }
506  const tt::target::Dim2d &ethernet_core_coord0() const {
507  return ethernet_core_coord0_;
508  }
509  uint32_t device_id1() const {
510  return ::flatbuffers::EndianScalar(device_id1_);
511  }
512  const tt::target::Dim2d &ethernet_core_coord1() const {
513  return ethernet_core_coord1_;
514  }
515 };
516 FLATBUFFERS_STRUCT_END(ChipChannel, 24);
517 
519  using type = ChipChannel;
520 };
521 
522 struct ChipDesc FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
524  struct Traits;
525  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
526  VT_ARCH = 4,
541  VT_NUM_CBS = 34
542  };
544  return static_cast<tt::target::Arch>(GetField<uint32_t>(VT_ARCH, 0));
545  }
546  const tt::target::Dim2d *grid_size() const {
547  return GetStruct<const tt::target::Dim2d *>(VT_GRID_SIZE);
548  }
549  uint64_t l1_size() const {
550  return GetField<uint64_t>(VT_L1_SIZE, 0);
551  }
552  uint32_t num_dram_channels() const {
553  return GetField<uint32_t>(VT_NUM_DRAM_CHANNELS, 0);
554  }
555  uint64_t dram_channel_size() const {
556  return GetField<uint64_t>(VT_DRAM_CHANNEL_SIZE, 0);
557  }
558  uint32_t noc_l1_address_align_bytes() const {
559  return GetField<uint32_t>(VT_NOC_L1_ADDRESS_ALIGN_BYTES, 0);
560  }
561  uint32_t pcie_address_align_bytes() const {
562  return GetField<uint32_t>(VT_PCIE_ADDRESS_ALIGN_BYTES, 0);
563  }
564  uint32_t noc_dram_address_align_bytes() const {
565  return GetField<uint32_t>(VT_NOC_DRAM_ADDRESS_ALIGN_BYTES, 0);
566  }
567  uint32_t l1_unreserved_base() const {
568  return GetField<uint32_t>(VT_L1_UNRESERVED_BASE, 0);
569  }
570  uint32_t erisc_l1_unreserved_base() const {
571  return GetField<uint32_t>(VT_ERISC_L1_UNRESERVED_BASE, 0);
572  }
573  uint32_t dram_unreserved_base() const {
574  return GetField<uint32_t>(VT_DRAM_UNRESERVED_BASE, 0);
575  }
576  uint32_t dram_unreserved_end() const {
577  return GetField<uint32_t>(VT_DRAM_UNRESERVED_END, 0);
578  }
579  const tt::target::ChipPhysicalCores *physical_cores() const {
580  return GetPointer<const tt::target::ChipPhysicalCores *>(VT_PHYSICAL_CORES);
581  }
582  const ::flatbuffers::Vector<tt::target::DataType> *supported_data_types() const {
583  return GetPointer<const ::flatbuffers::Vector<tt::target::DataType> *>(VT_SUPPORTED_DATA_TYPES);
584  }
585  const ::flatbuffers::Vector<const tt::target::Dim2d *> *supported_tile_sizes() const {
586  return GetPointer<const ::flatbuffers::Vector<const tt::target::Dim2d *> *>(VT_SUPPORTED_TILE_SIZES);
587  }
588  uint32_t num_cbs() const {
589  return GetField<uint32_t>(VT_NUM_CBS, 0);
590  }
591  bool Verify(::flatbuffers::Verifier &verifier) const {
592  return VerifyTableStart(verifier) &&
593  VerifyField<uint32_t>(verifier, VT_ARCH, 4) &&
594  VerifyField<tt::target::Dim2d>(verifier, VT_GRID_SIZE, 4) &&
595  VerifyField<uint64_t>(verifier, VT_L1_SIZE, 8) &&
596  VerifyField<uint32_t>(verifier, VT_NUM_DRAM_CHANNELS, 4) &&
597  VerifyField<uint64_t>(verifier, VT_DRAM_CHANNEL_SIZE, 8) &&
598  VerifyField<uint32_t>(verifier, VT_NOC_L1_ADDRESS_ALIGN_BYTES, 4) &&
599  VerifyField<uint32_t>(verifier, VT_PCIE_ADDRESS_ALIGN_BYTES, 4) &&
600  VerifyField<uint32_t>(verifier, VT_NOC_DRAM_ADDRESS_ALIGN_BYTES, 4) &&
601  VerifyField<uint32_t>(verifier, VT_L1_UNRESERVED_BASE, 4) &&
602  VerifyField<uint32_t>(verifier, VT_ERISC_L1_UNRESERVED_BASE, 4) &&
603  VerifyField<uint32_t>(verifier, VT_DRAM_UNRESERVED_BASE, 4) &&
604  VerifyField<uint32_t>(verifier, VT_DRAM_UNRESERVED_END, 4) &&
605  VerifyOffset(verifier, VT_PHYSICAL_CORES) &&
606  verifier.VerifyTable(physical_cores()) &&
607  VerifyOffset(verifier, VT_SUPPORTED_DATA_TYPES) &&
608  verifier.VerifyVector(supported_data_types()) &&
609  VerifyOffset(verifier, VT_SUPPORTED_TILE_SIZES) &&
610  verifier.VerifyVector(supported_tile_sizes()) &&
611  VerifyField<uint32_t>(verifier, VT_NUM_CBS, 4) &&
612  verifier.EndTable();
613  }
614 };
615 
617  typedef ChipDesc Table;
618  ::flatbuffers::FlatBufferBuilder &fbb_;
619  ::flatbuffers::uoffset_t start_;
621  fbb_.AddElement<uint32_t>(ChipDesc::VT_ARCH, static_cast<uint32_t>(arch), 0);
622  }
623  void add_grid_size(const tt::target::Dim2d *grid_size) {
624  fbb_.AddStruct(ChipDesc::VT_GRID_SIZE, grid_size);
625  }
626  void add_l1_size(uint64_t l1_size) {
627  fbb_.AddElement<uint64_t>(ChipDesc::VT_L1_SIZE, l1_size, 0);
628  }
629  void add_num_dram_channels(uint32_t num_dram_channels) {
630  fbb_.AddElement<uint32_t>(ChipDesc::VT_NUM_DRAM_CHANNELS, num_dram_channels, 0);
631  }
632  void add_dram_channel_size(uint64_t dram_channel_size) {
633  fbb_.AddElement<uint64_t>(ChipDesc::VT_DRAM_CHANNEL_SIZE, dram_channel_size, 0);
634  }
635  void add_noc_l1_address_align_bytes(uint32_t noc_l1_address_align_bytes) {
636  fbb_.AddElement<uint32_t>(ChipDesc::VT_NOC_L1_ADDRESS_ALIGN_BYTES, noc_l1_address_align_bytes, 0);
637  }
638  void add_pcie_address_align_bytes(uint32_t pcie_address_align_bytes) {
639  fbb_.AddElement<uint32_t>(ChipDesc::VT_PCIE_ADDRESS_ALIGN_BYTES, pcie_address_align_bytes, 0);
640  }
641  void add_noc_dram_address_align_bytes(uint32_t noc_dram_address_align_bytes) {
642  fbb_.AddElement<uint32_t>(ChipDesc::VT_NOC_DRAM_ADDRESS_ALIGN_BYTES, noc_dram_address_align_bytes, 0);
643  }
644  void add_l1_unreserved_base(uint32_t l1_unreserved_base) {
645  fbb_.AddElement<uint32_t>(ChipDesc::VT_L1_UNRESERVED_BASE, l1_unreserved_base, 0);
646  }
647  void add_erisc_l1_unreserved_base(uint32_t erisc_l1_unreserved_base) {
648  fbb_.AddElement<uint32_t>(ChipDesc::VT_ERISC_L1_UNRESERVED_BASE, erisc_l1_unreserved_base, 0);
649  }
650  void add_dram_unreserved_base(uint32_t dram_unreserved_base) {
651  fbb_.AddElement<uint32_t>(ChipDesc::VT_DRAM_UNRESERVED_BASE, dram_unreserved_base, 0);
652  }
653  void add_dram_unreserved_end(uint32_t dram_unreserved_end) {
654  fbb_.AddElement<uint32_t>(ChipDesc::VT_DRAM_UNRESERVED_END, dram_unreserved_end, 0);
655  }
656  void add_physical_cores(::flatbuffers::Offset<tt::target::ChipPhysicalCores> physical_cores) {
657  fbb_.AddOffset(ChipDesc::VT_PHYSICAL_CORES, physical_cores);
658  }
659  void add_supported_data_types(::flatbuffers::Offset<::flatbuffers::Vector<tt::target::DataType>> supported_data_types) {
660  fbb_.AddOffset(ChipDesc::VT_SUPPORTED_DATA_TYPES, supported_data_types);
661  }
662  void add_supported_tile_sizes(::flatbuffers::Offset<::flatbuffers::Vector<const tt::target::Dim2d *>> supported_tile_sizes) {
663  fbb_.AddOffset(ChipDesc::VT_SUPPORTED_TILE_SIZES, supported_tile_sizes);
664  }
665  void add_num_cbs(uint32_t num_cbs) {
666  fbb_.AddElement<uint32_t>(ChipDesc::VT_NUM_CBS, num_cbs, 0);
667  }
668  explicit ChipDescBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
669  : fbb_(_fbb) {
670  start_ = fbb_.StartTable();
671  }
672  ::flatbuffers::Offset<ChipDesc> Finish() {
673  const auto end = fbb_.EndTable(start_);
674  auto o = ::flatbuffers::Offset<ChipDesc>(end);
675  return o;
676  }
677 };
678 
679 inline ::flatbuffers::Offset<ChipDesc> CreateChipDesc(
680  ::flatbuffers::FlatBufferBuilder &_fbb,
682  const tt::target::Dim2d *grid_size = nullptr,
683  uint64_t l1_size = 0,
684  uint32_t num_dram_channels = 0,
685  uint64_t dram_channel_size = 0,
686  uint32_t noc_l1_address_align_bytes = 0,
687  uint32_t pcie_address_align_bytes = 0,
688  uint32_t noc_dram_address_align_bytes = 0,
689  uint32_t l1_unreserved_base = 0,
690  uint32_t erisc_l1_unreserved_base = 0,
691  uint32_t dram_unreserved_base = 0,
692  uint32_t dram_unreserved_end = 0,
693  ::flatbuffers::Offset<tt::target::ChipPhysicalCores> physical_cores = 0,
694  ::flatbuffers::Offset<::flatbuffers::Vector<tt::target::DataType>> supported_data_types = 0,
695  ::flatbuffers::Offset<::flatbuffers::Vector<const tt::target::Dim2d *>> supported_tile_sizes = 0,
696  uint32_t num_cbs = 0) {
697  ChipDescBuilder builder_(_fbb);
698  builder_.add_dram_channel_size(dram_channel_size);
699  builder_.add_l1_size(l1_size);
700  builder_.add_num_cbs(num_cbs);
701  builder_.add_supported_tile_sizes(supported_tile_sizes);
702  builder_.add_supported_data_types(supported_data_types);
703  builder_.add_physical_cores(physical_cores);
704  builder_.add_dram_unreserved_end(dram_unreserved_end);
705  builder_.add_dram_unreserved_base(dram_unreserved_base);
706  builder_.add_erisc_l1_unreserved_base(erisc_l1_unreserved_base);
707  builder_.add_l1_unreserved_base(l1_unreserved_base);
708  builder_.add_noc_dram_address_align_bytes(noc_dram_address_align_bytes);
709  builder_.add_pcie_address_align_bytes(pcie_address_align_bytes);
710  builder_.add_noc_l1_address_align_bytes(noc_l1_address_align_bytes);
711  builder_.add_num_dram_channels(num_dram_channels);
712  builder_.add_grid_size(grid_size);
713  builder_.add_arch(arch);
714  return builder_.Finish();
715 }
716 
718  using type = ChipDesc;
719  static auto constexpr Create = CreateChipDesc;
720 };
721 
722 inline ::flatbuffers::Offset<ChipDesc> CreateChipDescDirect(
723  ::flatbuffers::FlatBufferBuilder &_fbb,
725  const tt::target::Dim2d *grid_size = nullptr,
726  uint64_t l1_size = 0,
727  uint32_t num_dram_channels = 0,
728  uint64_t dram_channel_size = 0,
729  uint32_t noc_l1_address_align_bytes = 0,
730  uint32_t pcie_address_align_bytes = 0,
731  uint32_t noc_dram_address_align_bytes = 0,
732  uint32_t l1_unreserved_base = 0,
733  uint32_t erisc_l1_unreserved_base = 0,
734  uint32_t dram_unreserved_base = 0,
735  uint32_t dram_unreserved_end = 0,
736  ::flatbuffers::Offset<tt::target::ChipPhysicalCores> physical_cores = 0,
737  const std::vector<tt::target::DataType> *supported_data_types = nullptr,
738  const std::vector<tt::target::Dim2d> *supported_tile_sizes = nullptr,
739  uint32_t num_cbs = 0) {
740  auto supported_data_types__ = supported_data_types ? _fbb.CreateVector<tt::target::DataType>(*supported_data_types) : 0;
741  auto supported_tile_sizes__ = supported_tile_sizes ? _fbb.CreateVectorOfStructs<tt::target::Dim2d>(*supported_tile_sizes) : 0;
743  _fbb,
744  arch,
745  grid_size,
746  l1_size,
747  num_dram_channels,
748  dram_channel_size,
749  noc_l1_address_align_bytes,
750  pcie_address_align_bytes,
751  noc_dram_address_align_bytes,
752  l1_unreserved_base,
753  erisc_l1_unreserved_base,
754  dram_unreserved_base,
755  dram_unreserved_end,
756  physical_cores,
757  supported_data_types__,
758  supported_tile_sizes__,
759  num_cbs);
760 }
761 
762 struct ChipPhysicalCores FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
764  struct Traits;
765  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
767  VT_DRAM = 6,
768  VT_ETH = 8,
769  VT_ETH_INACTIVE = 10
770  };
771  const ::flatbuffers::Vector<const tt::target::Dim2d *> *worker() const {
772  return GetPointer<const ::flatbuffers::Vector<const tt::target::Dim2d *> *>(VT_WORKER);
773  }
774  const ::flatbuffers::Vector<const tt::target::Dim2d *> *dram() const {
775  return GetPointer<const ::flatbuffers::Vector<const tt::target::Dim2d *> *>(VT_DRAM);
776  }
777  const ::flatbuffers::Vector<const tt::target::Dim2d *> *eth() const {
778  return GetPointer<const ::flatbuffers::Vector<const tt::target::Dim2d *> *>(VT_ETH);
779  }
780  const ::flatbuffers::Vector<const tt::target::Dim2d *> *eth_inactive() const {
781  return GetPointer<const ::flatbuffers::Vector<const tt::target::Dim2d *> *>(VT_ETH_INACTIVE);
782  }
783  bool Verify(::flatbuffers::Verifier &verifier) const {
784  return VerifyTableStart(verifier) &&
785  VerifyOffset(verifier, VT_WORKER) &&
786  verifier.VerifyVector(worker()) &&
787  VerifyOffset(verifier, VT_DRAM) &&
788  verifier.VerifyVector(dram()) &&
789  VerifyOffset(verifier, VT_ETH) &&
790  verifier.VerifyVector(eth()) &&
791  VerifyOffset(verifier, VT_ETH_INACTIVE) &&
792  verifier.VerifyVector(eth_inactive()) &&
793  verifier.EndTable();
794  }
795 };
796 
798  typedef ChipPhysicalCores Table;
799  ::flatbuffers::FlatBufferBuilder &fbb_;
800  ::flatbuffers::uoffset_t start_;
801  void add_worker(::flatbuffers::Offset<::flatbuffers::Vector<const tt::target::Dim2d *>> worker) {
802  fbb_.AddOffset(ChipPhysicalCores::VT_WORKER, worker);
803  }
804  void add_dram(::flatbuffers::Offset<::flatbuffers::Vector<const tt::target::Dim2d *>> dram) {
805  fbb_.AddOffset(ChipPhysicalCores::VT_DRAM, dram);
806  }
807  void add_eth(::flatbuffers::Offset<::flatbuffers::Vector<const tt::target::Dim2d *>> eth) {
808  fbb_.AddOffset(ChipPhysicalCores::VT_ETH, eth);
809  }
810  void add_eth_inactive(::flatbuffers::Offset<::flatbuffers::Vector<const tt::target::Dim2d *>> eth_inactive) {
811  fbb_.AddOffset(ChipPhysicalCores::VT_ETH_INACTIVE, eth_inactive);
812  }
813  explicit ChipPhysicalCoresBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
814  : fbb_(_fbb) {
815  start_ = fbb_.StartTable();
816  }
817  ::flatbuffers::Offset<ChipPhysicalCores> Finish() {
818  const auto end = fbb_.EndTable(start_);
819  auto o = ::flatbuffers::Offset<ChipPhysicalCores>(end);
820  return o;
821  }
822 };
823 
824 inline ::flatbuffers::Offset<ChipPhysicalCores> CreateChipPhysicalCores(
825  ::flatbuffers::FlatBufferBuilder &_fbb,
826  ::flatbuffers::Offset<::flatbuffers::Vector<const tt::target::Dim2d *>> worker = 0,
827  ::flatbuffers::Offset<::flatbuffers::Vector<const tt::target::Dim2d *>> dram = 0,
828  ::flatbuffers::Offset<::flatbuffers::Vector<const tt::target::Dim2d *>> eth = 0,
829  ::flatbuffers::Offset<::flatbuffers::Vector<const tt::target::Dim2d *>> eth_inactive = 0) {
830  ChipPhysicalCoresBuilder builder_(_fbb);
831  builder_.add_eth_inactive(eth_inactive);
832  builder_.add_eth(eth);
833  builder_.add_dram(dram);
834  builder_.add_worker(worker);
835  return builder_.Finish();
836 }
837 
839  using type = ChipPhysicalCores;
840  static auto constexpr Create = CreateChipPhysicalCores;
841 };
842 
843 inline ::flatbuffers::Offset<ChipPhysicalCores> CreateChipPhysicalCoresDirect(
844  ::flatbuffers::FlatBufferBuilder &_fbb,
845  const std::vector<tt::target::Dim2d> *worker = nullptr,
846  const std::vector<tt::target::Dim2d> *dram = nullptr,
847  const std::vector<tt::target::Dim2d> *eth = nullptr,
848  const std::vector<tt::target::Dim2d> *eth_inactive = nullptr) {
849  auto worker__ = worker ? _fbb.CreateVectorOfStructs<tt::target::Dim2d>(*worker) : 0;
850  auto dram__ = dram ? _fbb.CreateVectorOfStructs<tt::target::Dim2d>(*dram) : 0;
851  auto eth__ = eth ? _fbb.CreateVectorOfStructs<tt::target::Dim2d>(*eth) : 0;
852  auto eth_inactive__ = eth_inactive ? _fbb.CreateVectorOfStructs<tt::target::Dim2d>(*eth_inactive) : 0;
854  _fbb,
855  worker__,
856  dram__,
857  eth__,
858  eth_inactive__);
859 }
860 
861 struct CPUDesc FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
863  struct Traits;
864  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
865  VT_ROLE = 4,
866  VT_TARGET_TRIPLE = 6
867  };
869  return static_cast<tt::target::CPURole>(GetField<uint8_t>(VT_ROLE, 0));
870  }
871  const ::flatbuffers::String *target_triple() const {
872  return GetPointer<const ::flatbuffers::String *>(VT_TARGET_TRIPLE);
873  }
874  bool Verify(::flatbuffers::Verifier &verifier) const {
875  return VerifyTableStart(verifier) &&
876  VerifyField<uint8_t>(verifier, VT_ROLE, 1) &&
877  VerifyOffset(verifier, VT_TARGET_TRIPLE) &&
878  verifier.VerifyString(target_triple()) &&
879  verifier.EndTable();
880  }
881 };
882 
884  typedef CPUDesc Table;
885  ::flatbuffers::FlatBufferBuilder &fbb_;
886  ::flatbuffers::uoffset_t start_;
888  fbb_.AddElement<uint8_t>(CPUDesc::VT_ROLE, static_cast<uint8_t>(role), 0);
889  }
890  void add_target_triple(::flatbuffers::Offset<::flatbuffers::String> target_triple) {
891  fbb_.AddOffset(CPUDesc::VT_TARGET_TRIPLE, target_triple);
892  }
893  explicit CPUDescBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
894  : fbb_(_fbb) {
895  start_ = fbb_.StartTable();
896  }
897  ::flatbuffers::Offset<CPUDesc> Finish() {
898  const auto end = fbb_.EndTable(start_);
899  auto o = ::flatbuffers::Offset<CPUDesc>(end);
900  return o;
901  }
902 };
903 
904 inline ::flatbuffers::Offset<CPUDesc> CreateCPUDesc(
905  ::flatbuffers::FlatBufferBuilder &_fbb,
907  ::flatbuffers::Offset<::flatbuffers::String> target_triple = 0) {
908  CPUDescBuilder builder_(_fbb);
909  builder_.add_target_triple(target_triple);
910  builder_.add_role(role);
911  return builder_.Finish();
912 }
913 
915  using type = CPUDesc;
916  static auto constexpr Create = CreateCPUDesc;
917 };
918 
919 inline ::flatbuffers::Offset<CPUDesc> CreateCPUDescDirect(
920  ::flatbuffers::FlatBufferBuilder &_fbb,
922  const char *target_triple = nullptr) {
923  auto target_triple__ = target_triple ? _fbb.CreateString(target_triple) : 0;
925  _fbb,
926  role,
927  target_triple__);
928 }
929 
930 struct SystemDesc FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
932  struct Traits;
933  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
939  VT_CHIP_CHANNELS = 14
940  };
941  const ::flatbuffers::Vector<::flatbuffers::Offset<tt::target::CPUDesc>> *cpu_descs() const {
942  return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<tt::target::CPUDesc>> *>(VT_CPU_DESCS);
943  }
944  const ::flatbuffers::Vector<::flatbuffers::Offset<tt::target::ChipDesc>> *chip_descs() const {
945  return GetPointer<const ::flatbuffers::Vector<::flatbuffers::Offset<tt::target::ChipDesc>> *>(VT_CHIP_DESCS);
946  }
947  const ::flatbuffers::Vector<uint32_t> *chip_desc_indices() const {
948  return GetPointer<const ::flatbuffers::Vector<uint32_t> *>(VT_CHIP_DESC_INDICES);
949  }
950  const ::flatbuffers::Vector<tt::target::ChipCapability> *chip_capabilities() const {
951  return GetPointer<const ::flatbuffers::Vector<tt::target::ChipCapability> *>(VT_CHIP_CAPABILITIES);
952  }
953  const ::flatbuffers::Vector<const tt::target::ChipCoord *> *chip_coords() const {
954  return GetPointer<const ::flatbuffers::Vector<const tt::target::ChipCoord *> *>(VT_CHIP_COORDS);
955  }
956  const ::flatbuffers::Vector<const tt::target::ChipChannel *> *chip_channels() const {
957  return GetPointer<const ::flatbuffers::Vector<const tt::target::ChipChannel *> *>(VT_CHIP_CHANNELS);
958  }
959  bool Verify(::flatbuffers::Verifier &verifier) const {
960  return VerifyTableStart(verifier) &&
961  VerifyOffset(verifier, VT_CPU_DESCS) &&
962  verifier.VerifyVector(cpu_descs()) &&
963  verifier.VerifyVectorOfTables(cpu_descs()) &&
964  VerifyOffset(verifier, VT_CHIP_DESCS) &&
965  verifier.VerifyVector(chip_descs()) &&
966  verifier.VerifyVectorOfTables(chip_descs()) &&
967  VerifyOffset(verifier, VT_CHIP_DESC_INDICES) &&
968  verifier.VerifyVector(chip_desc_indices()) &&
969  VerifyOffset(verifier, VT_CHIP_CAPABILITIES) &&
970  verifier.VerifyVector(chip_capabilities()) &&
971  VerifyOffset(verifier, VT_CHIP_COORDS) &&
972  verifier.VerifyVector(chip_coords()) &&
973  VerifyOffset(verifier, VT_CHIP_CHANNELS) &&
974  verifier.VerifyVector(chip_channels()) &&
975  verifier.EndTable();
976  }
977 };
978 
980  typedef SystemDesc Table;
981  ::flatbuffers::FlatBufferBuilder &fbb_;
982  ::flatbuffers::uoffset_t start_;
983  void add_cpu_descs(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<tt::target::CPUDesc>>> cpu_descs) {
984  fbb_.AddOffset(SystemDesc::VT_CPU_DESCS, cpu_descs);
985  }
986  void add_chip_descs(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<tt::target::ChipDesc>>> chip_descs) {
987  fbb_.AddOffset(SystemDesc::VT_CHIP_DESCS, chip_descs);
988  }
989  void add_chip_desc_indices(::flatbuffers::Offset<::flatbuffers::Vector<uint32_t>> chip_desc_indices) {
990  fbb_.AddOffset(SystemDesc::VT_CHIP_DESC_INDICES, chip_desc_indices);
991  }
992  void add_chip_capabilities(::flatbuffers::Offset<::flatbuffers::Vector<tt::target::ChipCapability>> chip_capabilities) {
993  fbb_.AddOffset(SystemDesc::VT_CHIP_CAPABILITIES, chip_capabilities);
994  }
995  void add_chip_coords(::flatbuffers::Offset<::flatbuffers::Vector<const tt::target::ChipCoord *>> chip_coords) {
996  fbb_.AddOffset(SystemDesc::VT_CHIP_COORDS, chip_coords);
997  }
998  void add_chip_channels(::flatbuffers::Offset<::flatbuffers::Vector<const tt::target::ChipChannel *>> chip_channels) {
999  fbb_.AddOffset(SystemDesc::VT_CHIP_CHANNELS, chip_channels);
1000  }
1001  explicit SystemDescBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
1002  : fbb_(_fbb) {
1003  start_ = fbb_.StartTable();
1004  }
1005  ::flatbuffers::Offset<SystemDesc> Finish() {
1006  const auto end = fbb_.EndTable(start_);
1007  auto o = ::flatbuffers::Offset<SystemDesc>(end);
1008  return o;
1009  }
1010 };
1011 
1012 inline ::flatbuffers::Offset<SystemDesc> CreateSystemDesc(
1013  ::flatbuffers::FlatBufferBuilder &_fbb,
1014  ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<tt::target::CPUDesc>>> cpu_descs = 0,
1015  ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset<tt::target::ChipDesc>>> chip_descs = 0,
1016  ::flatbuffers::Offset<::flatbuffers::Vector<uint32_t>> chip_desc_indices = 0,
1017  ::flatbuffers::Offset<::flatbuffers::Vector<tt::target::ChipCapability>> chip_capabilities = 0,
1018  ::flatbuffers::Offset<::flatbuffers::Vector<const tt::target::ChipCoord *>> chip_coords = 0,
1019  ::flatbuffers::Offset<::flatbuffers::Vector<const tt::target::ChipChannel *>> chip_channels = 0) {
1020  SystemDescBuilder builder_(_fbb);
1021  builder_.add_chip_channels(chip_channels);
1022  builder_.add_chip_coords(chip_coords);
1023  builder_.add_chip_capabilities(chip_capabilities);
1024  builder_.add_chip_desc_indices(chip_desc_indices);
1025  builder_.add_chip_descs(chip_descs);
1026  builder_.add_cpu_descs(cpu_descs);
1027  return builder_.Finish();
1028 }
1029 
1031  using type = SystemDesc;
1032  static auto constexpr Create = CreateSystemDesc;
1033 };
1034 
1035 inline ::flatbuffers::Offset<SystemDesc> CreateSystemDescDirect(
1036  ::flatbuffers::FlatBufferBuilder &_fbb,
1037  const std::vector<::flatbuffers::Offset<tt::target::CPUDesc>> *cpu_descs = nullptr,
1038  const std::vector<::flatbuffers::Offset<tt::target::ChipDesc>> *chip_descs = nullptr,
1039  const std::vector<uint32_t> *chip_desc_indices = nullptr,
1040  const std::vector<tt::target::ChipCapability> *chip_capabilities = nullptr,
1041  const std::vector<tt::target::ChipCoord> *chip_coords = nullptr,
1042  const std::vector<tt::target::ChipChannel> *chip_channels = nullptr) {
1043  auto cpu_descs__ = cpu_descs ? _fbb.CreateVector<::flatbuffers::Offset<tt::target::CPUDesc>>(*cpu_descs) : 0;
1044  auto chip_descs__ = chip_descs ? _fbb.CreateVector<::flatbuffers::Offset<tt::target::ChipDesc>>(*chip_descs) : 0;
1045  auto chip_desc_indices__ = chip_desc_indices ? _fbb.CreateVector<uint32_t>(*chip_desc_indices) : 0;
1046  auto chip_capabilities__ = chip_capabilities ? _fbb.CreateVector<tt::target::ChipCapability>(*chip_capabilities) : 0;
1047  auto chip_coords__ = chip_coords ? _fbb.CreateVectorOfStructs<tt::target::ChipCoord>(*chip_coords) : 0;
1048  auto chip_channels__ = chip_channels ? _fbb.CreateVectorOfStructs<tt::target::ChipChannel>(*chip_channels) : 0;
1050  _fbb,
1051  cpu_descs__,
1052  chip_descs__,
1053  chip_desc_indices__,
1054  chip_capabilities__,
1055  chip_coords__,
1056  chip_channels__);
1057 }
1058 
1059 struct DeviceRef FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
1061  struct Traits;
1062  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
1063  VT_GLOBAL_ID = 4
1064  };
1065  uint32_t global_id() const {
1066  return GetField<uint32_t>(VT_GLOBAL_ID, 0);
1067  }
1068  bool Verify(::flatbuffers::Verifier &verifier) const {
1069  return VerifyTableStart(verifier) &&
1070  VerifyField<uint32_t>(verifier, VT_GLOBAL_ID, 4) &&
1071  verifier.EndTable();
1072  }
1073 };
1074 
1076  typedef DeviceRef Table;
1077  ::flatbuffers::FlatBufferBuilder &fbb_;
1078  ::flatbuffers::uoffset_t start_;
1079  void add_global_id(uint32_t global_id) {
1080  fbb_.AddElement<uint32_t>(DeviceRef::VT_GLOBAL_ID, global_id, 0);
1081  }
1082  explicit DeviceRefBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
1083  : fbb_(_fbb) {
1084  start_ = fbb_.StartTable();
1085  }
1086  ::flatbuffers::Offset<DeviceRef> Finish() {
1087  const auto end = fbb_.EndTable(start_);
1088  auto o = ::flatbuffers::Offset<DeviceRef>(end);
1089  return o;
1090  }
1091 };
1092 
1093 inline ::flatbuffers::Offset<DeviceRef> CreateDeviceRef(
1094  ::flatbuffers::FlatBufferBuilder &_fbb,
1095  uint32_t global_id = 0) {
1096  DeviceRefBuilder builder_(_fbb);
1097  builder_.add_global_id(global_id);
1098  return builder_.Finish();
1099 }
1100 
1102  using type = DeviceRef;
1103  static auto constexpr Create = CreateDeviceRef;
1104 };
1105 
1106 struct EventRef FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
1108  struct Traits;
1109  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
1110  VT_GLOBAL_ID = 4
1111  };
1112  uint32_t global_id() const {
1113  return GetField<uint32_t>(VT_GLOBAL_ID, 0);
1114  }
1115  bool Verify(::flatbuffers::Verifier &verifier) const {
1116  return VerifyTableStart(verifier) &&
1117  VerifyField<uint32_t>(verifier, VT_GLOBAL_ID, 4) &&
1118  verifier.EndTable();
1119  }
1120 };
1121 
1123  typedef EventRef Table;
1124  ::flatbuffers::FlatBufferBuilder &fbb_;
1125  ::flatbuffers::uoffset_t start_;
1126  void add_global_id(uint32_t global_id) {
1127  fbb_.AddElement<uint32_t>(EventRef::VT_GLOBAL_ID, global_id, 0);
1128  }
1129  explicit EventRefBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
1130  : fbb_(_fbb) {
1131  start_ = fbb_.StartTable();
1132  }
1133  ::flatbuffers::Offset<EventRef> Finish() {
1134  const auto end = fbb_.EndTable(start_);
1135  auto o = ::flatbuffers::Offset<EventRef>(end);
1136  return o;
1137  }
1138 };
1139 
1140 inline ::flatbuffers::Offset<EventRef> CreateEventRef(
1141  ::flatbuffers::FlatBufferBuilder &_fbb,
1142  uint32_t global_id = 0) {
1143  EventRefBuilder builder_(_fbb);
1144  builder_.add_global_id(global_id);
1145  return builder_.Finish();
1146 }
1147 
1149  using type = EventRef;
1150  static auto constexpr Create = CreateEventRef;
1151 };
1152 
1153 struct DynamicLib FLATBUFFERS_FINAL_CLASS : private ::flatbuffers::Table {
1155  struct Traits;
1156  enum FlatBuffersVTableOffset FLATBUFFERS_VTABLE_UNDERLYING_TYPE {
1158  VT_RAW_FILE = 6
1159  };
1160  uint32_t dylib_id() const {
1161  return GetField<uint32_t>(VT_DYLIB_ID, 0);
1162  }
1163  const ::flatbuffers::Vector<uint8_t> *raw_file() const {
1164  return GetPointer<const ::flatbuffers::Vector<uint8_t> *>(VT_RAW_FILE);
1165  }
1166  bool Verify(::flatbuffers::Verifier &verifier) const {
1167  return VerifyTableStart(verifier) &&
1168  VerifyField<uint32_t>(verifier, VT_DYLIB_ID, 4) &&
1169  VerifyOffset(verifier, VT_RAW_FILE) &&
1170  verifier.VerifyVector(raw_file()) &&
1171  verifier.EndTable();
1172  }
1173 };
1174 
1176  typedef DynamicLib Table;
1177  ::flatbuffers::FlatBufferBuilder &fbb_;
1178  ::flatbuffers::uoffset_t start_;
1179  void add_dylib_id(uint32_t dylib_id) {
1180  fbb_.AddElement<uint32_t>(DynamicLib::VT_DYLIB_ID, dylib_id, 0);
1181  }
1182  void add_raw_file(::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> raw_file) {
1183  fbb_.AddOffset(DynamicLib::VT_RAW_FILE, raw_file);
1184  }
1185  explicit DynamicLibBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
1186  : fbb_(_fbb) {
1187  start_ = fbb_.StartTable();
1188  }
1189  ::flatbuffers::Offset<DynamicLib> Finish() {
1190  const auto end = fbb_.EndTable(start_);
1191  auto o = ::flatbuffers::Offset<DynamicLib>(end);
1192  return o;
1193  }
1194 };
1195 
1196 inline ::flatbuffers::Offset<DynamicLib> CreateDynamicLib(
1197  ::flatbuffers::FlatBufferBuilder &_fbb,
1198  uint32_t dylib_id = 0,
1199  ::flatbuffers::Offset<::flatbuffers::Vector<uint8_t>> raw_file = 0) {
1200  DynamicLibBuilder builder_(_fbb);
1201  builder_.add_raw_file(raw_file);
1202  builder_.add_dylib_id(dylib_id);
1203  return builder_.Finish();
1204 }
1205 
1207  using type = DynamicLib;
1208  static auto constexpr Create = CreateDynamicLib;
1209 };
1210 
1211 inline ::flatbuffers::Offset<DynamicLib> CreateDynamicLibDirect(
1212  ::flatbuffers::FlatBufferBuilder &_fbb,
1213  uint32_t dylib_id = 0,
1214  const std::vector<uint8_t> *raw_file = nullptr) {
1215  auto raw_file__ = raw_file ? _fbb.CreateVector<uint8_t>(*raw_file) : 0;
1217  _fbb,
1218  dylib_id,
1219  raw_file__);
1220 }
1221 
1222 } // namespace target
1223 } // namespace tt
1224 
1225 #endif // FLATBUFFERS_GENERATED_TYPES_TT_TARGET_H_
VT_NUM_DRAM_CHANNELS
Definition: types_generated.h:529
VT_DRAM_CHANNEL_SIZE
Definition: types_generated.h:530
VT_PCIE_ADDRESS_ALIGN_BYTES
Definition: types_generated.h:532
VT_GRID_SIZE
Definition: types_generated.h:527
VT_SUPPORTED_TILE_SIZES
Definition: types_generated.h:540
VT_ETH
Definition: types_generated.h:768
VT_NOC_L1_ADDRESS_ALIGN_BYTES
Definition: types_generated.h:531
VT_NOC_DRAM_ADDRESS_ALIGN_BYTES
Definition: types_generated.h:533
VT_DRAM_UNRESERVED_BASE
Definition: types_generated.h:536
VT_ROLE
Definition: types_generated.h:865
VT_PHYSICAL_CORES
Definition: types_generated.h:538
VT_CPU_DESCS
Definition: types_generated.h:934
VT_CHIP_DESC_INDICES
Definition: types_generated.h:936
VT_CHIP_CAPABILITIES
Definition: types_generated.h:937
VT_L1_UNRESERVED_BASE
Definition: types_generated.h:534
VT_ARCH
Definition: types_generated.h:526
VT_SUPPORTED_DATA_TYPES
Definition: types_generated.h:539
VT_ERISC_L1_UNRESERVED_BASE
Definition: types_generated.h:535
VT_WORKER
Definition: types_generated.h:766
VT_DRAM
Definition: types_generated.h:767
VT_CHIP_DESCS
Definition: types_generated.h:935
VT_DYLIB_ID
Definition: types_generated.h:1157
VT_CHIP_COORDS
Definition: types_generated.h:938
VT_DRAM_UNRESERVED_END
Definition: types_generated.h:537
VT_L1_SIZE
Definition: types_generated.h:528
VT_GLOBAL_ID
Definition: types_generated.h:379
inline ::flatbuffers::Offset< CPUDesc > CreateCPUDesc(::flatbuffers::FlatBufferBuilder &_fbb, tt::target::CPURole role=tt::target::CPURole::Host, ::flatbuffers::Offset<::flatbuffers::String > target_triple=0)
Definition: types_generated.h:904
const char *const * EnumNamesOOBVal()
Definition: types_generated.h:162
ChipCapability
Definition: types_generated.h:216
TensorLayout
Definition: types_generated.h:247
const char * EnumNameChipCapability(ChipCapability e)
Definition: types_generated.h:241
const char *const * EnumNamesArch()
Definition: types_generated.h:65
const char * EnumNameMemorySpace(MemorySpace e)
Definition: types_generated.h:210
const char *const * EnumNamesMemorySpace()
Definition: types_generated.h:199
inline ::flatbuffers::Offset< DeviceRef > CreateDeviceRef(::flatbuffers::FlatBufferBuilder &_fbb, uint32_t global_id=0)
Definition: types_generated.h:1093
const char * EnumNameCPURole(CPURole e)
Definition: types_generated.h:343
const BufferType(& EnumValuesBufferType())[5]
Definition: types_generated.h:290
const char * EnumNameMathFidelity(MathFidelity e)
Definition: types_generated.h:380
const char * EnumNameOOBVal(OOBVal e)
Definition: types_generated.h:174
const char * EnumNameArch(Arch e)
Definition: types_generated.h:75
inline ::flatbuffers::Offset< DynamicLib > CreateDynamicLibDirect(::flatbuffers::FlatBufferBuilder &_fbb, uint32_t dylib_id=0, const std::vector< uint8_t > *raw_file=nullptr)
Definition: types_generated.h:1211
Arch
Definition: types_generated.h:48
const DataType(& EnumValuesDataType())[12]
Definition: types_generated.h:98
const char *const * EnumNamesTensorLayout()
Definition: types_generated.h:264
MathFidelity
Definition: types_generated.h:349
inline ::flatbuffers::Offset< ChipPhysicalCores > CreateChipPhysicalCoresDirect(::flatbuffers::FlatBufferBuilder &_fbb, const std::vector< tt::target::Dim2d > *worker=nullptr, const std::vector< tt::target::Dim2d > *dram=nullptr, const std::vector< tt::target::Dim2d > *eth=nullptr, const std::vector< tt::target::Dim2d > *eth_inactive=nullptr)
Definition: types_generated.h:843
MemorySpace
Definition: types_generated.h:180
inline ::flatbuffers::Offset< ChipDesc > CreateChipDescDirect(::flatbuffers::FlatBufferBuilder &_fbb, tt::target::Arch arch=tt::target::Arch::Grayskull, const tt::target::Dim2d *grid_size=nullptr, uint64_t l1_size=0, uint32_t num_dram_channels=0, uint64_t dram_channel_size=0, uint32_t noc_l1_address_align_bytes=0, uint32_t pcie_address_align_bytes=0, uint32_t noc_dram_address_align_bytes=0, uint32_t l1_unreserved_base=0, uint32_t erisc_l1_unreserved_base=0, uint32_t dram_unreserved_base=0, uint32_t dram_unreserved_end=0, ::flatbuffers::Offset< tt::target::ChipPhysicalCores > physical_cores=0, const std::vector< tt::target::DataType > *supported_data_types=nullptr, const std::vector< tt::target::Dim2d > *supported_tile_sizes=nullptr, uint32_t num_cbs=0)
Definition: types_generated.h:722
const ChipCapability(& EnumValuesChipCapability())[2]
Definition: types_generated.h:224
inline ::flatbuffers::Offset< ChipPhysicalCores > CreateChipPhysicalCores(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset<::flatbuffers::Vector< const tt::target::Dim2d * >> worker=0, ::flatbuffers::Offset<::flatbuffers::Vector< const tt::target::Dim2d * >> dram=0, ::flatbuffers::Offset<::flatbuffers::Vector< const tt::target::Dim2d * >> eth=0, ::flatbuffers::Offset<::flatbuffers::Vector< const tt::target::Dim2d * >> eth_inactive=0)
Definition: types_generated.h:824
inline ::flatbuffers::Offset< ChipDesc > CreateChipDesc(::flatbuffers::FlatBufferBuilder &_fbb, tt::target::Arch arch=tt::target::Arch::Grayskull, const tt::target::Dim2d *grid_size=nullptr, uint64_t l1_size=0, uint32_t num_dram_channels=0, uint64_t dram_channel_size=0, uint32_t noc_l1_address_align_bytes=0, uint32_t pcie_address_align_bytes=0, uint32_t noc_dram_address_align_bytes=0, uint32_t l1_unreserved_base=0, uint32_t erisc_l1_unreserved_base=0, uint32_t dram_unreserved_base=0, uint32_t dram_unreserved_end=0, ::flatbuffers::Offset< tt::target::ChipPhysicalCores > physical_cores=0, ::flatbuffers::Offset<::flatbuffers::Vector< tt::target::DataType >> supported_data_types=0, ::flatbuffers::Offset<::flatbuffers::Vector< const tt::target::Dim2d * >> supported_tile_sizes=0, uint32_t num_cbs=0)
Definition: types_generated.h:679
const char *const * EnumNamesMathFidelity()
Definition: types_generated.h:368
inline ::flatbuffers::Offset< SystemDesc > CreateSystemDesc(::flatbuffers::FlatBufferBuilder &_fbb, ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset< tt::target::CPUDesc >>> cpu_descs=0, ::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset< tt::target::ChipDesc >>> chip_descs=0, ::flatbuffers::Offset<::flatbuffers::Vector< uint32_t >> chip_desc_indices=0, ::flatbuffers::Offset<::flatbuffers::Vector< tt::target::ChipCapability >> chip_capabilities=0, ::flatbuffers::Offset<::flatbuffers::Vector< const tt::target::ChipCoord * >> chip_coords=0, ::flatbuffers::Offset<::flatbuffers::Vector< const tt::target::ChipChannel * >> chip_channels=0)
Definition: types_generated.h:1012
const char *const * EnumNamesCPURole()
Definition: types_generated.h:334
inline ::flatbuffers::Offset< SystemDesc > CreateSystemDescDirect(::flatbuffers::FlatBufferBuilder &_fbb, const std::vector<::flatbuffers::Offset< tt::target::CPUDesc >> *cpu_descs=nullptr, const std::vector<::flatbuffers::Offset< tt::target::ChipDesc >> *chip_descs=nullptr, const std::vector< uint32_t > *chip_desc_indices=nullptr, const std::vector< tt::target::ChipCapability > *chip_capabilities=nullptr, const std::vector< tt::target::ChipCoord > *chip_coords=nullptr, const std::vector< tt::target::ChipChannel > *chip_channels=nullptr)
Definition: types_generated.h:1035
const MemorySpace(& EnumValuesMemorySpace())[4]
Definition: types_generated.h:189
const char * EnumNameTensorLayout(TensorLayout e)
Definition: types_generated.h:274
OOBVal
Definition: types_generated.h:141
const char *const * EnumNamesChipCapability()
Definition: types_generated.h:232
const char * EnumNameDataType(DataType e)
Definition: types_generated.h:135
const char *const * EnumNamesDataType()
Definition: types_generated.h:116
const OOBVal(& EnumValuesOOBVal())[5]
Definition: types_generated.h:151
BufferType
Definition: types_generated.h:280
const MathFidelity(& EnumValuesMathFidelity())[4]
Definition: types_generated.h:358
const char *const * EnumNamesBufferType()
Definition: types_generated.h:301
const CPURole(& EnumValuesCPURole())[2]
Definition: types_generated.h:326
const Arch(& EnumValuesArch())[3]
Definition: types_generated.h:56
const TensorLayout(& EnumValuesTensorLayout())[3]
Definition: types_generated.h:255
FLATBUFFERS_MANUALLY_ALIGNED_STRUCT(4) Dim2d FLATBUFFERS_FINAL_CLASS
Definition: types_generated.h:386
inline ::flatbuffers::Offset< EventRef > CreateEventRef(::flatbuffers::FlatBufferBuilder &_fbb, uint32_t global_id=0)
Definition: types_generated.h:1140
const char * EnumNameBufferType(BufferType e)
Definition: types_generated.h:313
inline ::flatbuffers::Offset< CPUDesc > CreateCPUDescDirect(::flatbuffers::FlatBufferBuilder &_fbb, tt::target::CPURole role=tt::target::CPURole::Host, const char *target_triple=nullptr)
Definition: types_generated.h:919
CPURole
Definition: types_generated.h:319
DataType
Definition: types_generated.h:81
inline ::flatbuffers::Offset< DynamicLib > CreateDynamicLib(::flatbuffers::FlatBufferBuilder &_fbb, uint32_t dylib_id=0, ::flatbuffers::Offset<::flatbuffers::Vector< uint8_t >> raw_file=0)
Definition: types_generated.h:1196
FLATBUFFERS_STRUCT_END(Dim2d, 8)
Definition: debug_info_generated.h:18
Definition: types_generated.h:883
CPUDescBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: types_generated.h:893
::flatbuffers::Offset< CPUDesc > Finish()
Definition: types_generated.h:897
::flatbuffers::uoffset_t start_
Definition: types_generated.h:886
void add_role(tt::target::CPURole role)
Definition: types_generated.h:887
::flatbuffers::FlatBufferBuilder & fbb_
Definition: types_generated.h:885
void add_target_triple(::flatbuffers::Offset<::flatbuffers::String > target_triple)
Definition: types_generated.h:890
CPUDesc Table
Definition: types_generated.h:884
Definition: types_generated.h:914
CPUDesc type
Definition: types_generated.h:915
static constexpr auto Create
Definition: types_generated.h:916
Definition: types_generated.h:518
ChipChannel type
Definition: types_generated.h:519
Definition: types_generated.h:478
ChipCoord type
Definition: types_generated.h:479
Definition: types_generated.h:616
void add_l1_unreserved_base(uint32_t l1_unreserved_base)
Definition: types_generated.h:644
void add_supported_data_types(::flatbuffers::Offset<::flatbuffers::Vector< tt::target::DataType >> supported_data_types)
Definition: types_generated.h:659
void add_erisc_l1_unreserved_base(uint32_t erisc_l1_unreserved_base)
Definition: types_generated.h:647
void add_dram_unreserved_end(uint32_t dram_unreserved_end)
Definition: types_generated.h:653
void add_supported_tile_sizes(::flatbuffers::Offset<::flatbuffers::Vector< const tt::target::Dim2d * >> supported_tile_sizes)
Definition: types_generated.h:662
::flatbuffers::FlatBufferBuilder & fbb_
Definition: types_generated.h:618
void add_arch(tt::target::Arch arch)
Definition: types_generated.h:620
ChipDescBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: types_generated.h:668
::flatbuffers::uoffset_t start_
Definition: types_generated.h:619
void add_grid_size(const tt::target::Dim2d *grid_size)
Definition: types_generated.h:623
void add_pcie_address_align_bytes(uint32_t pcie_address_align_bytes)
Definition: types_generated.h:638
void add_num_cbs(uint32_t num_cbs)
Definition: types_generated.h:665
void add_dram_channel_size(uint64_t dram_channel_size)
Definition: types_generated.h:632
void add_noc_dram_address_align_bytes(uint32_t noc_dram_address_align_bytes)
Definition: types_generated.h:641
::flatbuffers::Offset< ChipDesc > Finish()
Definition: types_generated.h:672
void add_l1_size(uint64_t l1_size)
Definition: types_generated.h:626
void add_noc_l1_address_align_bytes(uint32_t noc_l1_address_align_bytes)
Definition: types_generated.h:635
void add_num_dram_channels(uint32_t num_dram_channels)
Definition: types_generated.h:629
void add_physical_cores(::flatbuffers::Offset< tt::target::ChipPhysicalCores > physical_cores)
Definition: types_generated.h:656
void add_dram_unreserved_base(uint32_t dram_unreserved_base)
Definition: types_generated.h:650
ChipDesc Table
Definition: types_generated.h:617
Definition: types_generated.h:717
ChipDesc type
Definition: types_generated.h:718
static constexpr auto Create
Definition: types_generated.h:719
Definition: types_generated.h:797
ChipPhysicalCores Table
Definition: types_generated.h:798
::flatbuffers::Offset< ChipPhysicalCores > Finish()
Definition: types_generated.h:817
ChipPhysicalCoresBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: types_generated.h:813
::flatbuffers::uoffset_t start_
Definition: types_generated.h:800
void add_worker(::flatbuffers::Offset<::flatbuffers::Vector< const tt::target::Dim2d * >> worker)
Definition: types_generated.h:801
void add_eth_inactive(::flatbuffers::Offset<::flatbuffers::Vector< const tt::target::Dim2d * >> eth_inactive)
Definition: types_generated.h:810
void add_eth(::flatbuffers::Offset<::flatbuffers::Vector< const tt::target::Dim2d * >> eth)
Definition: types_generated.h:807
void add_dram(::flatbuffers::Offset<::flatbuffers::Vector< const tt::target::Dim2d * >> dram)
Definition: types_generated.h:804
::flatbuffers::FlatBufferBuilder & fbb_
Definition: types_generated.h:799
Definition: types_generated.h:838
static constexpr auto Create
Definition: types_generated.h:840
ChipPhysicalCores type
Definition: types_generated.h:839
Definition: types_generated.h:1075
::flatbuffers::uoffset_t start_
Definition: types_generated.h:1078
DeviceRef Table
Definition: types_generated.h:1076
::flatbuffers::FlatBufferBuilder & fbb_
Definition: types_generated.h:1077
DeviceRefBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: types_generated.h:1082
::flatbuffers::Offset< DeviceRef > Finish()
Definition: types_generated.h:1086
void add_global_id(uint32_t global_id)
Definition: types_generated.h:1079
Definition: types_generated.h:1101
static constexpr auto Create
Definition: types_generated.h:1103
DeviceRef type
Definition: types_generated.h:1102
Definition: types_generated.h:438
Dim2dRange type
Definition: types_generated.h:439
Definition: types_generated.h:410
Dim2d type
Definition: types_generated.h:411
Definition: types_generated.h:1175
::flatbuffers::FlatBufferBuilder & fbb_
Definition: types_generated.h:1177
DynamicLibBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: types_generated.h:1185
void add_raw_file(::flatbuffers::Offset<::flatbuffers::Vector< uint8_t >> raw_file)
Definition: types_generated.h:1182
::flatbuffers::Offset< DynamicLib > Finish()
Definition: types_generated.h:1189
void add_dylib_id(uint32_t dylib_id)
Definition: types_generated.h:1179
DynamicLib Table
Definition: types_generated.h:1176
::flatbuffers::uoffset_t start_
Definition: types_generated.h:1178
Definition: types_generated.h:1206
DynamicLib type
Definition: types_generated.h:1207
static constexpr auto Create
Definition: types_generated.h:1208
Definition: types_generated.h:1122
::flatbuffers::FlatBufferBuilder & fbb_
Definition: types_generated.h:1124
void add_global_id(uint32_t global_id)
Definition: types_generated.h:1126
::flatbuffers::uoffset_t start_
Definition: types_generated.h:1125
EventRef Table
Definition: types_generated.h:1123
EventRefBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: types_generated.h:1129
::flatbuffers::Offset< EventRef > Finish()
Definition: types_generated.h:1133
Definition: types_generated.h:1148
static constexpr auto Create
Definition: types_generated.h:1150
EventRef type
Definition: types_generated.h:1149
Definition: debug_info_generated.h:36
CPUDescBuilder Builder
Definition: types_generated.h:862
uint32_t noc_dram_address_align_bytes() const
Definition: types_generated.h:564
const ::flatbuffers::Vector< const tt::target::Dim2d * > * eth_inactive() const
Definition: types_generated.h:780
uint64_t dram_channel_size() const
Definition: types_generated.h:555
uint32_t erisc_l1_unreserved_base() const
Definition: types_generated.h:570
const ::flatbuffers::Vector< tt::target::ChipCapability > * chip_capabilities() const
Definition: types_generated.h:950
const ::flatbuffers::Vector< const tt::target::Dim2d * > * worker() const
Definition: types_generated.h:771
const ::flatbuffers::Vector< uint8_t > * raw_file() const
Definition: types_generated.h:1163
const ::flatbuffers::Vector< const tt::target::ChipCoord * > * chip_coords() const
Definition: types_generated.h:953
const tt::target::ChipPhysicalCores * physical_cores() const
Definition: types_generated.h:579
tt::target::Arch arch() const
Definition: types_generated.h:543
SystemDescBuilder Builder
Definition: types_generated.h:931
DeviceRefBuilder Builder
Definition: types_generated.h:1060
uint32_t num_dram_channels() const
Definition: types_generated.h:552
uint32_t pcie_address_align_bytes() const
Definition: types_generated.h:561
const ::flatbuffers::Vector< tt::target::DataType > * supported_data_types() const
Definition: types_generated.h:582
uint32_t global_id() const
Definition: types_generated.h:1065
uint64_t l1_size() const
Definition: types_generated.h:549
uint32_t l1_unreserved_base() const
Definition: types_generated.h:567
const ::flatbuffers::Vector< const tt::target::Dim2d * > * supported_tile_sizes() const
Definition: types_generated.h:585
uint32_t dylib_id() const
Definition: types_generated.h:1160
EventRefBuilder Builder
Definition: types_generated.h:1107
const ::flatbuffers::Vector<::flatbuffers::Offset< tt::target::ChipDesc > > * chip_descs() const
Definition: types_generated.h:944
uint32_t noc_l1_address_align_bytes() const
Definition: types_generated.h:558
const ::flatbuffers::Vector< const tt::target::Dim2d * > * eth() const
Definition: types_generated.h:777
uint32_t dram_unreserved_base() const
Definition: types_generated.h:573
const tt::target::Dim2d * grid_size() const
Definition: types_generated.h:546
const ::flatbuffers::Vector< const tt::target::ChipChannel * > * chip_channels() const
Definition: types_generated.h:956
uint32_t dram_unreserved_end() const
Definition: types_generated.h:576
const ::flatbuffers::Vector<::flatbuffers::Offset< tt::target::CPUDesc > > * cpu_descs() const
Definition: types_generated.h:941
uint32_t num_cbs() const
Definition: types_generated.h:588
bool Verify(::flatbuffers::Verifier &verifier) const
Definition: types_generated.h:591
ChipPhysicalCoresBuilder Builder
Definition: types_generated.h:763
const ::flatbuffers::Vector< uint32_t > * chip_desc_indices() const
Definition: types_generated.h:947
const ::flatbuffers::Vector< const tt::target::Dim2d * > * dram() const
Definition: types_generated.h:774
const ::flatbuffers::String * target_triple() const
Definition: types_generated.h:871
DynamicLibBuilder Builder
Definition: types_generated.h:1154
ChipDescBuilder Builder
Definition: types_generated.h:523
tt::target::CPURole role() const
Definition: types_generated.h:868
Definition: types_generated.h:979
::flatbuffers::Offset< SystemDesc > Finish()
Definition: types_generated.h:1005
SystemDesc Table
Definition: types_generated.h:980
void add_chip_desc_indices(::flatbuffers::Offset<::flatbuffers::Vector< uint32_t >> chip_desc_indices)
Definition: types_generated.h:989
void add_cpu_descs(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset< tt::target::CPUDesc >>> cpu_descs)
Definition: types_generated.h:983
void add_chip_channels(::flatbuffers::Offset<::flatbuffers::Vector< const tt::target::ChipChannel * >> chip_channels)
Definition: types_generated.h:998
SystemDescBuilder(::flatbuffers::FlatBufferBuilder &_fbb)
Definition: types_generated.h:1001
void add_chip_coords(::flatbuffers::Offset<::flatbuffers::Vector< const tt::target::ChipCoord * >> chip_coords)
Definition: types_generated.h:995
::flatbuffers::FlatBufferBuilder & fbb_
Definition: types_generated.h:981
::flatbuffers::uoffset_t start_
Definition: types_generated.h:982
void add_chip_capabilities(::flatbuffers::Offset<::flatbuffers::Vector< tt::target::ChipCapability >> chip_capabilities)
Definition: types_generated.h:992
void add_chip_descs(::flatbuffers::Offset<::flatbuffers::Vector<::flatbuffers::Offset< tt::target::ChipDesc >>> chip_descs)
Definition: types_generated.h:986
Definition: types_generated.h:1030
static constexpr auto Create
Definition: types_generated.h:1032
SystemDesc type
Definition: types_generated.h:1031