Neodroid  0.2.0
Machine Learning Environment Prototyping Tool
NeodroidFBSState.cs
Go to the documentation of this file.
1 // <auto-generated>
2 // automatically generated by the FlatBuffers compiler, do not modify
3 // </auto-generated>
4 
5 using System;
6 using System.Text;
7 using FlatBuffers;
8 
9 namespace droid.Runtime.Messaging.FBS
10 {
11  public struct FState : IFlatbufferObject
12 {
13  private Table __p;
14  public ByteBuffer ByteBuffer { get { return this.__p.bb; } }
15  public static FState GetRootAsFState(ByteBuffer _bb) { return GetRootAsFState(_bb, new FState()); }
16  public static FState GetRootAsFState(ByteBuffer _bb, FState obj) { return (obj.__assign(_bb.GetInt(_bb.Position) + _bb.Position, _bb)); }
17  public static bool FStateBufferHasIdentifier(ByteBuffer _bb) { return Table.__has_identifier(_bb, "STAT"); }
18  public void __init(int _i, ByteBuffer _bb) { this.__p.bb_pos = _i; this.__p.bb = _bb; }
19  public FState __assign(int _i, ByteBuffer _bb) { this.__init(_i, _bb); return this; }
20 
21  public string EnvironmentName { get { int o = this.__p.__offset(4); return o != 0 ? this.__p.__string(o + this.__p.bb_pos) : null; } }
22 #if ENABLE_SPAN_T
23  public Span<byte> GetEnvironmentNameBytes() { return __p.__vector_as_span(4); }
24 #else
25  public ArraySegment<byte>? GetEnvironmentNameBytes() { return this.__p.__vector_as_arraysegment(4); }
26 #endif
27  public byte[] GetEnvironmentNameArray() { return this.__p.__vector_as_array<byte>(4); }
28  public int FrameNumber { get { int o = this.__p.__offset(6); return o != 0 ? this.__p.bb.GetInt(o + this.__p.bb_pos) : (int)0; } }
29  public float Signal { get { int o = this.__p.__offset(8); return o != 0 ? this.__p.bb.GetFloat(o + this.__p.bb_pos) : (float)0.0f; } }
30  public bool Terminated { get { int o = this.__p.__offset(10); return o != 0 ? 0!=this.__p.bb.Get(o + this.__p.bb_pos) : (bool)false; } }
31  public string TerminationReason { get { int o = this.__p.__offset(12); return o != 0 ? this.__p.__string(o + this.__p.bb_pos) : null; } }
32 #if ENABLE_SPAN_T
33  public Span<byte> GetTerminationReasonBytes() { return __p.__vector_as_span(12); }
34 #else
35  public ArraySegment<byte>? GetTerminationReasonBytes() { return this.__p.__vector_as_arraysegment(12); }
36 #endif
37  public byte[] GetTerminationReasonArray() { return this.__p.__vector_as_array<byte>(12); }
38  public float TotalEnergySpent { get { int o = this.__p.__offset(14); return o != 0 ? this.__p.bb.GetFloat(o + this.__p.bb_pos) : (float)0.0f; } }
39  public FOBS? Observations(int j) { int o = this.__p.__offset(16); return o != 0 ? (FOBS?)(new FOBS()).__assign(this.__p.__indirect(this.__p.__vector(o) + j * 4), this.__p.bb) : null; }
40  public int ObservationsLength { get { int o = this.__p.__offset(16); return o != 0 ? this.__p.__vector_len(o) : 0; } }
41  public FOBS? ObservationsByKey(string key) { int o = this.__p.__offset(16); return o != 0 ? FOBS.__lookup_by_key(this.__p.__vector(o), key, this.__p.bb) : null; }
42  public float Observables(int j) { int o = this.__p.__offset(18); return o != 0 ? this.__p.bb.GetFloat(this.__p.__vector(o) + j * 4) : (float)0; }
43  public int ObservablesLength { get { int o = this.__p.__offset(18); return o != 0 ? this.__p.__vector_len(o) : 0; } }
44 #if ENABLE_SPAN_T
45  public Span<byte> GetObservablesBytes() { return __p.__vector_as_span(18); }
46 #else
47  public ArraySegment<byte>? GetObservablesBytes() { return this.__p.__vector_as_arraysegment(18); }
48 #endif
49  public float[] GetObservablesArray() { return this.__p.__vector_as_array<float>(18); }
50  public FUnobservables? Unobservables { get { int o = this.__p.__offset(20); return o != 0 ? (FUnobservables?)(new FUnobservables()).__assign(this.__p.__indirect(o + this.__p.bb_pos), this.__p.bb) : null; } }
51  public FEnvironmentDescription? EnvironmentDescription { get { int o = this.__p.__offset(22); return o != 0 ? (FEnvironmentDescription?)(new FEnvironmentDescription()).__assign(this.__p.__indirect(o + this.__p.bb_pos), this.__p.bb) : null; } }
52  public string SerialisedMessage { get { int o = this.__p.__offset(24); return o != 0 ? this.__p.__string(o + this.__p.bb_pos) : null; } }
53 #if ENABLE_SPAN_T
54  public Span<byte> GetSerialisedMessageBytes() { return __p.__vector_as_span(24); }
55 #else
56  public ArraySegment<byte>? GetSerialisedMessageBytes() { return this.__p.__vector_as_arraysegment(24); }
57 #endif
58  public byte[] GetSerialisedMessageArray() { return this.__p.__vector_as_array<byte>(24); }
59 
60  public static Offset<FState> CreateFState(FlatBufferBuilder builder,
61  StringOffset environment_nameOffset = default(StringOffset),
62  int frame_number = 0,
63  float signal = 0.0f,
64  bool terminated = false,
65  StringOffset termination_reasonOffset = default(StringOffset),
66  float total_energy_spent = 0.0f,
67  VectorOffset observationsOffset = default(VectorOffset),
68  VectorOffset observablesOffset = default(VectorOffset),
69  Offset<FUnobservables> unobservablesOffset = default(Offset<FUnobservables>),
70  Offset<FEnvironmentDescription> environment_descriptionOffset = default(Offset<FEnvironmentDescription>),
71  StringOffset serialised_messageOffset = default(StringOffset)) {
72  builder.StartObject(11);
73  AddSerialisedMessage(builder, serialised_messageOffset);
74  AddEnvironmentDescription(builder, environment_descriptionOffset);
75  AddUnobservables(builder, unobservablesOffset);
76  AddObservables(builder, observablesOffset);
77  AddObservations(builder, observationsOffset);
78  AddTotalEnergySpent(builder, total_energy_spent);
79  AddTerminationReason(builder, termination_reasonOffset);
80  AddSignal(builder, signal);
81  AddFrameNumber(builder, frame_number);
82  AddEnvironmentName(builder, environment_nameOffset);
83  AddTerminated(builder, terminated);
84  return EndFState(builder);
85  }
86 
87  public static void StartFState(FlatBufferBuilder builder) { builder.StartObject(11); }
88  public static void AddEnvironmentName(FlatBufferBuilder builder, StringOffset environmentNameOffset) { builder.AddOffset(0, environmentNameOffset.Value, 0); }
89  public static void AddFrameNumber(FlatBufferBuilder builder, int frameNumber) { builder.AddInt(1, frameNumber, 0); }
90  public static void AddSignal(FlatBufferBuilder builder, float signal) { builder.AddFloat(2, signal, 0.0f); }
91  public static void AddTerminated(FlatBufferBuilder builder, bool terminated) { builder.AddBool(3, terminated, false); }
92  public static void AddTerminationReason(FlatBufferBuilder builder, StringOffset terminationReasonOffset) { builder.AddOffset(4, terminationReasonOffset.Value, 0); }
93  public static void AddTotalEnergySpent(FlatBufferBuilder builder, float totalEnergySpent) { builder.AddFloat(5, totalEnergySpent, 0.0f); }
94  public static void AddObservations(FlatBufferBuilder builder, VectorOffset observationsOffset) { builder.AddOffset(6, observationsOffset.Value, 0); }
95  public static VectorOffset CreateObservationsVector(FlatBufferBuilder builder, Offset<FOBS>[] data) { builder.StartVector(4, data.Length, 4); for (int i = data.Length - 1; i >= 0; i--) builder.AddOffset(data[i].Value); return builder.EndVector(); }
96  public static VectorOffset CreateObservationsVectorBlock(FlatBufferBuilder builder, Offset<FOBS>[] data) { builder.StartVector(4, data.Length, 4); builder.Add(data); return builder.EndVector(); }
97  public static void StartObservationsVector(FlatBufferBuilder builder, int numElems) { builder.StartVector(4, numElems, 4); }
98  public static void AddObservables(FlatBufferBuilder builder, VectorOffset observablesOffset) { builder.AddOffset(7, observablesOffset.Value, 0); }
99  public static VectorOffset CreateObservablesVector(FlatBufferBuilder builder, float[] data) { builder.StartVector(4, data.Length, 4); for (int i = data.Length - 1; i >= 0; i--) builder.AddFloat(data[i]); return builder.EndVector(); }
100  public static VectorOffset CreateObservablesVectorBlock(FlatBufferBuilder builder, float[] data) { builder.StartVector(4, data.Length, 4); builder.Add(data); return builder.EndVector(); }
101  public static void StartObservablesVector(FlatBufferBuilder builder, int numElems) { builder.StartVector(4, numElems, 4); }
102  public static void AddUnobservables(FlatBufferBuilder builder, Offset<FUnobservables> unobservablesOffset) { builder.AddOffset(8, unobservablesOffset.Value, 0); }
103  public static void AddEnvironmentDescription(FlatBufferBuilder builder, Offset<FEnvironmentDescription> environmentDescriptionOffset) { builder.AddOffset(9, environmentDescriptionOffset.Value, 0); }
104  public static void AddSerialisedMessage(FlatBufferBuilder builder, StringOffset serialisedMessageOffset) { builder.AddOffset(10, serialisedMessageOffset.Value, 0); }
105  public static Offset<FState> EndFState(FlatBufferBuilder builder) {
106  int o = builder.EndObject();
107  builder.Required(o, 4); // environment_name
108  return new Offset<FState>(o);
109  }
110  public static void FinishFStateBuffer(FlatBufferBuilder builder, Offset<FState> offset) { builder.Finish(offset.Value, "STAT"); }
111  public static void FinishSizePrefixedFStateBuffer(FlatBufferBuilder builder, Offset<FState> offset) { builder.FinishSizePrefixed(offset.Value, "STAT"); }
112 
113  public static VectorOffset CreateSortedVectorOfFState(FlatBufferBuilder builder, Offset<FState>[] offsets) {
114  Array.Sort(offsets, (Offset<FState> o1, Offset<FState> o2) => Table.CompareStrings(Table.__offset(4, o1.Value, builder.DataBuffer), Table.__offset(4, o2.Value, builder.DataBuffer), builder.DataBuffer));
115  return builder.CreateVectorOfTables(offsets);
116  }
117 
118  public static FState? __lookup_by_key(int vectorLocation, string key, ByteBuffer bb) {
119  byte[] byteKey = Encoding.UTF8.GetBytes(key);
120  int span = bb.GetInt(vectorLocation - 4);
121  int start = 0;
122  while (span != 0) {
123  int middle = span / 2;
124  int tableOffset = Table.__indirect(vectorLocation + 4 * (start + middle), bb);
125  int comp = Table.CompareStrings(Table.__offset(4, bb.Length - tableOffset, bb), byteKey, bb);
126  if (comp > 0) {
127  span = middle;
128  } else if (comp < 0) {
129  middle++;
130  start += middle;
131  span -= middle;
132  } else {
133  return new FState().__assign(tableOffset, bb);
134  }
135  }
136  return null;
137  }
138 };
139 
140 public struct FObjective : IFlatbufferObject
141 {
142  private Table __p;
143  public ByteBuffer ByteBuffer { get { return this.__p.bb; } }
144  public static FObjective GetRootAsFObjective(ByteBuffer _bb) { return GetRootAsFObjective(_bb, new FObjective()); }
145  public static FObjective GetRootAsFObjective(ByteBuffer _bb, FObjective obj) { return (obj.__assign(_bb.GetInt(_bb.Position) + _bb.Position, _bb)); }
146  public void __init(int _i, ByteBuffer _bb) { this.__p.bb_pos = _i; this.__p.bb = _bb; }
147  public FObjective __assign(int _i, ByteBuffer _bb) { this.__init(_i, _bb); return this; }
148 
149  public string ObjectiveName { get { int o = this.__p.__offset(4); return o != 0 ? this.__p.__string(o + this.__p.bb_pos) : null; } }
150 #if ENABLE_SPAN_T
151  public Span<byte> GetObjectiveNameBytes() { return __p.__vector_as_span(4); }
152 #else
153  public ArraySegment<byte>? GetObjectiveNameBytes() { return this.__p.__vector_as_arraysegment(4); }
154 #endif
155  public byte[] GetObjectiveNameArray() { return this.__p.__vector_as_array<byte>(4); }
156  public int MaxEpisodeLength { get { int o = this.__p.__offset(6); return o != 0 ? this.__p.bb.GetInt(o + this.__p.bb_pos) : (int)0; } }
157  public float SolvedThreshold { get { int o = this.__p.__offset(8); return o != 0 ? this.__p.bb.GetFloat(o + this.__p.bb_pos) : (float)0.0f; } }
158 
159  public static Offset<FObjective> CreateFObjective(FlatBufferBuilder builder,
160  StringOffset objective_nameOffset = default(StringOffset),
161  int max_episode_length = 0,
162  float solved_threshold = 0.0f) {
163  builder.StartObject(3);
164  AddSolvedThreshold(builder, solved_threshold);
165  AddMaxEpisodeLength(builder, max_episode_length);
166  AddObjectiveName(builder, objective_nameOffset);
167  return EndFObjective(builder);
168  }
169 
170  public static void StartFObjective(FlatBufferBuilder builder) { builder.StartObject(3); }
171  public static void AddObjectiveName(FlatBufferBuilder builder, StringOffset objectiveNameOffset) { builder.AddOffset(0, objectiveNameOffset.Value, 0); }
172  public static void AddMaxEpisodeLength(FlatBufferBuilder builder, int maxEpisodeLength) { builder.AddInt(1, maxEpisodeLength, 0); }
173  public static void AddSolvedThreshold(FlatBufferBuilder builder, float solvedThreshold) { builder.AddFloat(2, solvedThreshold, 0.0f); }
174  public static Offset<FObjective> EndFObjective(FlatBufferBuilder builder) {
175  int o = builder.EndObject();
176  return new Offset<FObjective>(o);
177  }
178 };
179 
180 public struct FEnvironmentDescription : IFlatbufferObject
181 {
182  private Table __p;
183  public ByteBuffer ByteBuffer { get { return this.__p.bb; } }
185  public static FEnvironmentDescription GetRootAsFEnvironmentDescription(ByteBuffer _bb, FEnvironmentDescription obj) { return (obj.__assign(_bb.GetInt(_bb.Position) + _bb.Position, _bb)); }
186  public void __init(int _i, ByteBuffer _bb) { this.__p.bb_pos = _i; this.__p.bb = _bb; }
187  public FEnvironmentDescription __assign(int _i, ByteBuffer _bb) { this.__init(_i, _bb); return this; }
188 
189  public FObjective? Objective { get { int o = this.__p.__offset(4); return o != 0 ? (FObjective?)(new FObjective()).__assign(this.__p.__indirect(o + this.__p.bb_pos), this.__p.bb) : null; } }
190  public FObjective? AvailableObjectives(int j) { int o = this.__p.__offset(6); return o != 0 ? (FObjective?)(new FObjective()).__assign(this.__p.__indirect(this.__p.__vector(o) + j * 4), this.__p.bb) : null; }
191  public int AvailableObjectivesLength { get { int o = this.__p.__offset(6); return o != 0 ? this.__p.__vector_len(o) : 0; } }
192  public FActor? Actors(int j) { int o = this.__p.__offset(8); return o != 0 ? (FActor?)(new FActor()).__assign(this.__p.__indirect(this.__p.__vector(o) + j * 4), this.__p.bb) : null; }
193  public int ActorsLength { get { int o = this.__p.__offset(8); return o != 0 ? this.__p.__vector_len(o) : 0; } }
194  public FActor? ActorsByKey(string key) { int o = this.__p.__offset(8); return o != 0 ? FActor.__lookup_by_key(this.__p.__vector(o), key, this.__p.bb) : null; }
195  public FConfigurable? Configurables(int j) { int o = this.__p.__offset(10); return o != 0 ? (FConfigurable?)(new FConfigurable()).__assign(this.__p.__indirect(this.__p.__vector(o) + j * 4), this.__p.bb) : null; }
196  public int ConfigurablesLength { get { int o = this.__p.__offset(10); return o != 0 ? this.__p.__vector_len(o) : 0; } }
197  public FConfigurable? ConfigurablesByKey(string key) { int o = this.__p.__offset(10); return o != 0 ? FConfigurable.__lookup_by_key(this.__p.__vector(o), key, this.__p.bb) : null; }
198 
199  public static Offset<FEnvironmentDescription> CreateFEnvironmentDescription(FlatBufferBuilder builder,
200  Offset<FObjective> objectiveOffset = default(Offset<FObjective>),
201  VectorOffset available_objectivesOffset = default(VectorOffset),
202  VectorOffset actorsOffset = default(VectorOffset),
203  VectorOffset configurablesOffset = default(VectorOffset)) {
204  builder.StartObject(4);
205  AddConfigurables(builder, configurablesOffset);
206  AddActors(builder, actorsOffset);
207  AddAvailableObjectives(builder, available_objectivesOffset);
208  AddObjective(builder, objectiveOffset);
209  return EndFEnvironmentDescription(builder);
210  }
211 
212  public static void StartFEnvironmentDescription(FlatBufferBuilder builder) { builder.StartObject(4); }
213  public static void AddObjective(FlatBufferBuilder builder, Offset<FObjective> objectiveOffset) { builder.AddOffset(0, objectiveOffset.Value, 0); }
214  public static void AddAvailableObjectives(FlatBufferBuilder builder, VectorOffset availableObjectivesOffset) { builder.AddOffset(1, availableObjectivesOffset.Value, 0); }
215  public static VectorOffset CreateAvailableObjectivesVector(FlatBufferBuilder builder, Offset<FObjective>[] data) { builder.StartVector(4, data.Length, 4); for (int i = data.Length - 1; i >= 0; i--) builder.AddOffset(data[i].Value); return builder.EndVector(); }
216  public static VectorOffset CreateAvailableObjectivesVectorBlock(FlatBufferBuilder builder, Offset<FObjective>[] data) { builder.StartVector(4, data.Length, 4); builder.Add(data); return builder.EndVector(); }
217  public static void StartAvailableObjectivesVector(FlatBufferBuilder builder, int numElems) { builder.StartVector(4, numElems, 4); }
218  public static void AddActors(FlatBufferBuilder builder, VectorOffset actorsOffset) { builder.AddOffset(2, actorsOffset.Value, 0); }
219  public static VectorOffset CreateActorsVector(FlatBufferBuilder builder, Offset<FActor>[] data) { builder.StartVector(4, data.Length, 4); for (int i = data.Length - 1; i >= 0; i--) builder.AddOffset(data[i].Value); return builder.EndVector(); }
220  public static VectorOffset CreateActorsVectorBlock(FlatBufferBuilder builder, Offset<FActor>[] data) { builder.StartVector(4, data.Length, 4); builder.Add(data); return builder.EndVector(); }
221  public static void StartActorsVector(FlatBufferBuilder builder, int numElems) { builder.StartVector(4, numElems, 4); }
222  public static void AddConfigurables(FlatBufferBuilder builder, VectorOffset configurablesOffset) { builder.AddOffset(3, configurablesOffset.Value, 0); }
223  public static VectorOffset CreateConfigurablesVector(FlatBufferBuilder builder, Offset<FConfigurable>[] data) { builder.StartVector(4, data.Length, 4); for (int i = data.Length - 1; i >= 0; i--) builder.AddOffset(data[i].Value); return builder.EndVector(); }
224  public static VectorOffset CreateConfigurablesVectorBlock(FlatBufferBuilder builder, Offset<FConfigurable>[] data) { builder.StartVector(4, data.Length, 4); builder.Add(data); return builder.EndVector(); }
225  public static void StartConfigurablesVector(FlatBufferBuilder builder, int numElems) { builder.StartVector(4, numElems, 4); }
226  public static Offset<FEnvironmentDescription> EndFEnvironmentDescription(FlatBufferBuilder builder) {
227  int o = builder.EndObject();
228  return new Offset<FEnvironmentDescription>(o);
229  }
230 };
231 
232 public struct FConfigurable : IFlatbufferObject
233 {
234  private Table __p;
235  public ByteBuffer ByteBuffer { get { return this.__p.bb; } }
236  public static FConfigurable GetRootAsFConfigurable(ByteBuffer _bb) { return GetRootAsFConfigurable(_bb, new FConfigurable()); }
237  public static FConfigurable GetRootAsFConfigurable(ByteBuffer _bb, FConfigurable obj) { return (obj.__assign(_bb.GetInt(_bb.Position) + _bb.Position, _bb)); }
238  public void __init(int _i, ByteBuffer _bb) { this.__p.bb_pos = _i; this.__p.bb = _bb; }
239  public FConfigurable __assign(int _i, ByteBuffer _bb) { this.__init(_i, _bb); return this; }
240 
241  public string ConfigurableName { get { int o = this.__p.__offset(4); return o != 0 ? this.__p.__string(o + this.__p.bb_pos) : null; } }
242 #if ENABLE_SPAN_T
243  public Span<byte> GetConfigurableNameBytes() { return __p.__vector_as_span(4); }
244 #else
245  public ArraySegment<byte>? GetConfigurableNameBytes() { return this.__p.__vector_as_arraysegment(4); }
246 #endif
247  public byte[] GetConfigurableNameArray() { return this.__p.__vector_as_array<byte>(4); }
248  public FObservation ObservationType { get { int o = this.__p.__offset(6); return o != 0 ? (FObservation)this.__p.bb.Get(o + this.__p.bb_pos) : FObservation.NONE; } }
249  public TTable? Observation<TTable>() where TTable : struct, IFlatbufferObject { int o = this.__p.__offset(8); return o != 0 ? (TTable?)this.__p.__union<TTable>(o) : null; }
250 
251  public static Offset<FConfigurable> CreateFConfigurable(FlatBufferBuilder builder,
252  StringOffset configurable_nameOffset = default(StringOffset),
253  FObservation observation_type = FObservation.NONE,
254  int observationOffset = 0) {
255  builder.StartObject(3);
256  AddObservation(builder, observationOffset);
257  AddConfigurableName(builder, configurable_nameOffset);
258  AddObservationType(builder, observation_type);
259  return EndFConfigurable(builder);
260  }
261 
262  public static void StartFConfigurable(FlatBufferBuilder builder) { builder.StartObject(3); }
263  public static void AddConfigurableName(FlatBufferBuilder builder, StringOffset configurableNameOffset) { builder.AddOffset(0, configurableNameOffset.Value, 0); }
264  public static void AddObservationType(FlatBufferBuilder builder, FObservation observationType) { builder.AddByte(1, (byte)observationType, 0); }
265  public static void AddObservation(FlatBufferBuilder builder, int observationOffset) { builder.AddOffset(2, observationOffset, 0); }
266  public static Offset<FConfigurable> EndFConfigurable(FlatBufferBuilder builder) {
267  int o = builder.EndObject();
268  builder.Required(o, 4); // configurable_name
269  return new Offset<FConfigurable>(o);
270  }
271 
272  public static VectorOffset CreateSortedVectorOfFConfigurable(FlatBufferBuilder builder, Offset<FConfigurable>[] offsets) {
273  Array.Sort(offsets, (Offset<FConfigurable> o1, Offset<FConfigurable> o2) => Table.CompareStrings(Table.__offset(4, o1.Value, builder.DataBuffer), Table.__offset(4, o2.Value, builder.DataBuffer), builder.DataBuffer));
274  return builder.CreateVectorOfTables(offsets);
275  }
276 
277  public static FConfigurable? __lookup_by_key(int vectorLocation, string key, ByteBuffer bb) {
278  byte[] byteKey = Encoding.UTF8.GetBytes(key);
279  int span = bb.GetInt(vectorLocation - 4);
280  int start = 0;
281  while (span != 0) {
282  int middle = span / 2;
283  int tableOffset = Table.__indirect(vectorLocation + 4 * (start + middle), bb);
284  int comp = Table.CompareStrings(Table.__offset(4, bb.Length - tableOffset, bb), byteKey, bb);
285  if (comp > 0) {
286  span = middle;
287  } else if (comp < 0) {
288  middle++;
289  start += middle;
290  span -= middle;
291  } else {
292  return new FConfigurable().__assign(tableOffset, bb);
293  }
294  }
295  return null;
296  }
297 };
298 
299 public struct FActor : IFlatbufferObject
300 {
301  private Table __p;
302  public ByteBuffer ByteBuffer { get { return this.__p.bb; } }
303  public static FActor GetRootAsFActor(ByteBuffer _bb) { return GetRootAsFActor(_bb, new FActor()); }
304  public static FActor GetRootAsFActor(ByteBuffer _bb, FActor obj) { return (obj.__assign(_bb.GetInt(_bb.Position) + _bb.Position, _bb)); }
305  public void __init(int _i, ByteBuffer _bb) { this.__p.bb_pos = _i; this.__p.bb = _bb; }
306  public FActor __assign(int _i, ByteBuffer _bb) { this.__init(_i, _bb); return this; }
307 
308  public string ActorName { get { int o = this.__p.__offset(4); return o != 0 ? this.__p.__string(o + this.__p.bb_pos) : null; } }
309 #if ENABLE_SPAN_T
310  public Span<byte> GetActorNameBytes() { return __p.__vector_as_span(4); }
311 #else
312  public ArraySegment<byte>? GetActorNameBytes() { return this.__p.__vector_as_arraysegment(4); }
313 #endif
314  public byte[] GetActorNameArray() { return this.__p.__vector_as_array<byte>(4); }
315  public bool Alive { get { int o = this.__p.__offset(6); return o != 0 ? 0!=this.__p.bb.Get(o + this.__p.bb_pos) : (bool)false; } }
316  public FActuator? Actuators(int j) { int o = this.__p.__offset(8); return o != 0 ? (FActuator?)(new FActuator()).__assign(this.__p.__indirect(this.__p.__vector(o) + j * 4), this.__p.bb) : null; }
317  public int ActuatorsLength { get { int o = this.__p.__offset(8); return o != 0 ? this.__p.__vector_len(o) : 0; } }
318  public FActuator? ActuatorsByKey(string key) { int o = this.__p.__offset(8); return o != 0 ? FActuator.__lookup_by_key(this.__p.__vector(o), key, this.__p.bb) : null; }
319 
320  public static Offset<FActor> CreateFActor(FlatBufferBuilder builder,
321  StringOffset actor_nameOffset = default(StringOffset),
322  bool alive = false,
323  VectorOffset actuatorsOffset = default(VectorOffset)) {
324  builder.StartObject(3);
325  AddActuators(builder, actuatorsOffset);
326  AddActorName(builder, actor_nameOffset);
327  AddAlive(builder, alive);
328  return EndFActor(builder);
329  }
330 
331  public static void StartFActor(FlatBufferBuilder builder) { builder.StartObject(3); }
332  public static void AddActorName(FlatBufferBuilder builder, StringOffset actorNameOffset) { builder.AddOffset(0, actorNameOffset.Value, 0); }
333  public static void AddAlive(FlatBufferBuilder builder, bool alive) { builder.AddBool(1, alive, false); }
334  public static void AddActuators(FlatBufferBuilder builder, VectorOffset actuatorsOffset) { builder.AddOffset(2, actuatorsOffset.Value, 0); }
335  public static VectorOffset CreateActuatorsVector(FlatBufferBuilder builder, Offset<FActuator>[] data) { builder.StartVector(4, data.Length, 4); for (int i = data.Length - 1; i >= 0; i--) builder.AddOffset(data[i].Value); return builder.EndVector(); }
336  public static VectorOffset CreateActuatorsVectorBlock(FlatBufferBuilder builder, Offset<FActuator>[] data) { builder.StartVector(4, data.Length, 4); builder.Add(data); return builder.EndVector(); }
337  public static void StartActuatorsVector(FlatBufferBuilder builder, int numElems) { builder.StartVector(4, numElems, 4); }
338  public static Offset<FActor> EndFActor(FlatBufferBuilder builder) {
339  int o = builder.EndObject();
340  builder.Required(o, 4); // actor_name
341  return new Offset<FActor>(o);
342  }
343 
344  public static VectorOffset CreateSortedVectorOfFActor(FlatBufferBuilder builder, Offset<FActor>[] offsets) {
345  Array.Sort(offsets, (Offset<FActor> o1, Offset<FActor> o2) => Table.CompareStrings(Table.__offset(4, o1.Value, builder.DataBuffer), Table.__offset(4, o2.Value, builder.DataBuffer), builder.DataBuffer));
346  return builder.CreateVectorOfTables(offsets);
347  }
348 
349  public static FActor? __lookup_by_key(int vectorLocation, string key, ByteBuffer bb) {
350  byte[] byteKey = Encoding.UTF8.GetBytes(key);
351  int span = bb.GetInt(vectorLocation - 4);
352  int start = 0;
353  while (span != 0) {
354  int middle = span / 2;
355  int tableOffset = Table.__indirect(vectorLocation + 4 * (start + middle), bb);
356  int comp = Table.CompareStrings(Table.__offset(4, bb.Length - tableOffset, bb), byteKey, bb);
357  if (comp > 0) {
358  span = middle;
359  } else if (comp < 0) {
360  middle++;
361  start += middle;
362  span -= middle;
363  } else {
364  return new FActor().__assign(tableOffset, bb);
365  }
366  }
367  return null;
368  }
369 };
370 
371 public struct FActuator : IFlatbufferObject
372 {
373  private Table __p;
374  public ByteBuffer ByteBuffer { get { return this.__p.bb; } }
375  public static FActuator GetRootAsFActuator(ByteBuffer _bb) { return GetRootAsFActuator(_bb, new FActuator()); }
376  public static FActuator GetRootAsFActuator(ByteBuffer _bb, FActuator obj) { return (obj.__assign(_bb.GetInt(_bb.Position) + _bb.Position, _bb)); }
377  public void __init(int _i, ByteBuffer _bb) { this.__p.bb_pos = _i; this.__p.bb = _bb; }
378  public FActuator __assign(int _i, ByteBuffer _bb) { this.__init(_i, _bb); return this; }
379 
380  public string ActuatorName { get { int o = this.__p.__offset(4); return o != 0 ? this.__p.__string(o + this.__p.bb_pos) : null; } }
381 #if ENABLE_SPAN_T
382  public Span<byte> GetActuatorNameBytes() { return __p.__vector_as_span(4); }
383 #else
384  public ArraySegment<byte>? GetActuatorNameBytes() { return this.__p.__vector_as_arraysegment(4); }
385 #endif
386  public byte[] GetActuatorNameArray() { return this.__p.__vector_as_array<byte>(4); }
387  public FRange? ValidInput { get { int o = this.__p.__offset(6); return o != 0 ? (FRange?)(new FRange()).__assign(o + this.__p.bb_pos, this.__p.bb) : null; } }
388  public float EnergySpentSinceReset { get { int o = this.__p.__offset(8); return o != 0 ? this.__p.bb.GetFloat(o + this.__p.bb_pos) : (float)0.0f; } }
389 
390  public static void StartFActuator(FlatBufferBuilder builder) { builder.StartObject(3); }
391  public static void AddActuatorName(FlatBufferBuilder builder, StringOffset actuatorNameOffset) { builder.AddOffset(0, actuatorNameOffset.Value, 0); }
392  public static void AddValidInput(FlatBufferBuilder builder, Offset<FRange> validInputOffset) { builder.AddStruct(1, validInputOffset.Value, 0); }
393  public static void AddEnergySpentSinceReset(FlatBufferBuilder builder, float energySpentSinceReset) { builder.AddFloat(2, energySpentSinceReset, 0.0f); }
394  public static Offset<FActuator> EndFActuator(FlatBufferBuilder builder) {
395  int o = builder.EndObject();
396  builder.Required(o, 4); // actuator_name
397  builder.Required(o, 6); // valid_input
398  return new Offset<FActuator>(o);
399  }
400 
401  public static VectorOffset CreateSortedVectorOfFActuator(FlatBufferBuilder builder, Offset<FActuator>[] offsets) {
402  Array.Sort(offsets, (Offset<FActuator> o1, Offset<FActuator> o2) => Table.CompareStrings(Table.__offset(4, o1.Value, builder.DataBuffer), Table.__offset(4, o2.Value, builder.DataBuffer), builder.DataBuffer));
403  return builder.CreateVectorOfTables(offsets);
404  }
405 
406  public static FActuator? __lookup_by_key(int vectorLocation, string key, ByteBuffer bb) {
407  byte[] byteKey = Encoding.UTF8.GetBytes(key);
408  int span = bb.GetInt(vectorLocation - 4);
409  int start = 0;
410  while (span != 0) {
411  int middle = span / 2;
412  int tableOffset = Table.__indirect(vectorLocation + 4 * (start + middle), bb);
413  int comp = Table.CompareStrings(Table.__offset(4, bb.Length - tableOffset, bb), byteKey, bb);
414  if (comp > 0) {
415  span = middle;
416  } else if (comp < 0) {
417  middle++;
418  start += middle;
419  span -= middle;
420  } else {
421  return new FActuator().__assign(tableOffset, bb);
422  }
423  }
424  return null;
425  }
426 };
427 
428 public struct FOBS : IFlatbufferObject
429 {
430  private Table __p;
431  public ByteBuffer ByteBuffer { get { return this.__p.bb; } }
432  public static FOBS GetRootAsFOBS(ByteBuffer _bb) { return GetRootAsFOBS(_bb, new FOBS()); }
433  public static FOBS GetRootAsFOBS(ByteBuffer _bb, FOBS obj) { return (obj.__assign(_bb.GetInt(_bb.Position) + _bb.Position, _bb)); }
434  public void __init(int _i, ByteBuffer _bb) { this.__p.bb_pos = _i; this.__p.bb = _bb; }
435  public FOBS __assign(int _i, ByteBuffer _bb) { this.__init(_i, _bb); return this; }
436 
437  public string ObservationName { get { int o = this.__p.__offset(4); return o != 0 ? this.__p.__string(o + this.__p.bb_pos) : null; } }
438 #if ENABLE_SPAN_T
439  public Span<byte> GetObservationNameBytes() { return __p.__vector_as_span(4); }
440 #else
441  public ArraySegment<byte>? GetObservationNameBytes() { return this.__p.__vector_as_arraysegment(4); }
442 #endif
443  public byte[] GetObservationNameArray() { return this.__p.__vector_as_array<byte>(4); }
444  public FObservation ObservationType { get { int o = this.__p.__offset(6); return o != 0 ? (FObservation)this.__p.bb.Get(o + this.__p.bb_pos) : FObservation.NONE; } }
445  public TTable? Observation<TTable>() where TTable : struct, IFlatbufferObject { int o = this.__p.__offset(8); return o != 0 ? (TTable?)this.__p.__union<TTable>(o) : null; }
446 
447  public static Offset<FOBS> CreateFOBS(FlatBufferBuilder builder,
448  StringOffset observation_nameOffset = default(StringOffset),
449  FObservation observation_type = FObservation.NONE,
450  int observationOffset = 0) {
451  builder.StartObject(3);
452  AddObservation(builder, observationOffset);
453  AddObservationName(builder, observation_nameOffset);
454  AddObservationType(builder, observation_type);
455  return EndFOBS(builder);
456  }
457 
458  public static void StartFOBS(FlatBufferBuilder builder) { builder.StartObject(3); }
459  public static void AddObservationName(FlatBufferBuilder builder, StringOffset observationNameOffset) { builder.AddOffset(0, observationNameOffset.Value, 0); }
460  public static void AddObservationType(FlatBufferBuilder builder, FObservation observationType) { builder.AddByte(1, (byte)observationType, 0); }
461  public static void AddObservation(FlatBufferBuilder builder, int observationOffset) { builder.AddOffset(2, observationOffset, 0); }
462  public static Offset<FOBS> EndFOBS(FlatBufferBuilder builder) {
463  int o = builder.EndObject();
464  builder.Required(o, 4); // observation_name
465  return new Offset<FOBS>(o);
466  }
467 
468  public static VectorOffset CreateSortedVectorOfFOBS(FlatBufferBuilder builder, Offset<FOBS>[] offsets) {
469  Array.Sort(offsets, (Offset<FOBS> o1, Offset<FOBS> o2) => Table.CompareStrings(Table.__offset(4, o1.Value, builder.DataBuffer), Table.__offset(4, o2.Value, builder.DataBuffer), builder.DataBuffer));
470  return builder.CreateVectorOfTables(offsets);
471  }
472 
473  public static FOBS? __lookup_by_key(int vectorLocation, string key, ByteBuffer bb) {
474  byte[] byteKey = Encoding.UTF8.GetBytes(key);
475  int span = bb.GetInt(vectorLocation - 4);
476  int start = 0;
477  while (span != 0) {
478  int middle = span / 2;
479  int tableOffset = Table.__indirect(vectorLocation + 4 * (start + middle), bb);
480  int comp = Table.CompareStrings(Table.__offset(4, bb.Length - tableOffset, bb), byteKey, bb);
481  if (comp > 0) {
482  span = middle;
483  } else if (comp < 0) {
484  middle++;
485  start += middle;
486  span -= middle;
487  } else {
488  return new FOBS().__assign(tableOffset, bb);
489  }
490  }
491  return null;
492  }
493 };
494 
495 
496 }
static void StartObservationsVector(FlatBufferBuilder builder, int numElems)
void __init(int _i, ByteBuffer _bb)
static void AddUnobservables(FlatBufferBuilder builder, Offset< FUnobservables > unobservablesOffset)
static void AddObservationType(FlatBufferBuilder builder, FObservation observationType)
static VectorOffset CreateObservablesVectorBlock(FlatBufferBuilder builder, float[] data)
ArraySegment< byte > GetObjectiveNameBytes()
FEnvironmentDescription __assign(int _i, ByteBuffer _bb)
static void AddSolvedThreshold(FlatBufferBuilder builder, float solvedThreshold)
static FConfigurable __lookup_by_key(int vectorLocation, string key, ByteBuffer bb)
ArraySegment< byte > GetActuatorNameBytes()
static Offset< FEnvironmentDescription > EndFEnvironmentDescription(FlatBufferBuilder builder)
static void AddObservation(FlatBufferBuilder builder, int observationOffset)
static VectorOffset CreateActorsVectorBlock(FlatBufferBuilder builder, Offset< FActor >[] data)
static void StartObservablesVector(FlatBufferBuilder builder, int numElems)
static void AddTotalEnergySpent(FlatBufferBuilder builder, float totalEnergySpent)
static void AddAlive(FlatBufferBuilder builder, bool alive)
static void StartFObjective(FlatBufferBuilder builder)
static Offset< FConfigurable > CreateFConfigurable(FlatBufferBuilder builder, StringOffset configurable_nameOffset=default(StringOffset), FObservation observation_type=FObservation.NONE, int observationOffset=0)
FState __assign(int _i, ByteBuffer _bb)
static VectorOffset CreateObservablesVector(FlatBufferBuilder builder, float[] data)
static void AddObservables(FlatBufferBuilder builder, VectorOffset observablesOffset)
void __init(int _i, ByteBuffer _bb)
static FState GetRootAsFState(ByteBuffer _bb)
static void StartAvailableObjectivesVector(FlatBufferBuilder builder, int numElems)
static void StartFActuator(FlatBufferBuilder builder)
static void AddSerialisedMessage(FlatBufferBuilder builder, StringOffset serialisedMessageOffset)
static void AddConfigurableName(FlatBufferBuilder builder, StringOffset configurableNameOffset)
static FOBS GetRootAsFOBS(ByteBuffer _bb)
static Offset< FActuator > EndFActuator(FlatBufferBuilder builder)
static bool FStateBufferHasIdentifier(ByteBuffer _bb)
static VectorOffset CreateActuatorsVector(FlatBufferBuilder builder, Offset< FActuator >[] data)
static void StartActuatorsVector(FlatBufferBuilder builder, int numElems)
static FActor __lookup_by_key(int vectorLocation, string key, ByteBuffer bb)
static void StartFState(FlatBufferBuilder builder)
FActor __assign(int _i, ByteBuffer _bb)
static Offset< FObjective > CreateFObjective(FlatBufferBuilder builder, StringOffset objective_nameOffset=default(StringOffset), int max_episode_length=0, float solved_threshold=0.0f)
static FState GetRootAsFState(ByteBuffer _bb, FState obj)
static FActuator GetRootAsFActuator(ByteBuffer _bb)
static Offset< FObjective > EndFObjective(FlatBufferBuilder builder)
ArraySegment< byte > GetObservablesBytes()
static VectorOffset CreateSortedVectorOfFState(FlatBufferBuilder builder, Offset< FState >[] offsets)
static void AddConfigurables(FlatBufferBuilder builder, VectorOffset configurablesOffset)
FObjective __assign(int _i, ByteBuffer _bb)
static Offset< FOBS > CreateFOBS(FlatBufferBuilder builder, StringOffset observation_nameOffset=default(StringOffset), FObservation observation_type=FObservation.NONE, int observationOffset=0)
static FOBS GetRootAsFOBS(ByteBuffer _bb, FOBS obj)
static void AddActuatorName(FlatBufferBuilder builder, StringOffset actuatorNameOffset)
FActuator __assign(int _i, ByteBuffer _bb)
static VectorOffset CreateSortedVectorOfFActor(FlatBufferBuilder builder, Offset< FActor >[] offsets)
static void AddObservationName(FlatBufferBuilder builder, StringOffset observationNameOffset)
void __init(int _i, ByteBuffer _bb)
static void FinishFStateBuffer(FlatBufferBuilder builder, Offset< FState > offset)
static FConfigurable GetRootAsFConfigurable(ByteBuffer _bb, FConfigurable obj)
static void StartFOBS(FlatBufferBuilder builder)
static FActor GetRootAsFActor(ByteBuffer _bb, FActor obj)
static FObjective GetRootAsFObjective(ByteBuffer _bb)
static VectorOffset CreateSortedVectorOfFOBS(FlatBufferBuilder builder, Offset< FOBS >[] offsets)
static void StartFActor(FlatBufferBuilder builder)
static void AddEnvironmentDescription(FlatBufferBuilder builder, Offset< FEnvironmentDescription > environmentDescriptionOffset)
static VectorOffset CreateObservationsVector(FlatBufferBuilder builder, Offset< FOBS >[] data)
static void AddObjective(FlatBufferBuilder builder, Offset< FObjective > objectiveOffset)
static void AddTerminated(FlatBufferBuilder builder, bool terminated)
static void AddObservationType(FlatBufferBuilder builder, FObservation observationType)
static void AddMaxEpisodeLength(FlatBufferBuilder builder, int maxEpisodeLength)
void __init(int _i, ByteBuffer _bb)
static VectorOffset CreateActorsVector(FlatBufferBuilder builder, Offset< FActor >[] data)
static VectorOffset CreateConfigurablesVector(FlatBufferBuilder builder, Offset< FConfigurable >[] data)
static void AddValidInput(FlatBufferBuilder builder, Offset< FRange > validInputOffset)
FOBS __assign(int _i, ByteBuffer _bb)
static void AddObjectiveName(FlatBufferBuilder builder, StringOffset objectiveNameOffset)
ArraySegment< byte > GetSerialisedMessageBytes()
void __init(int _i, ByteBuffer _bb)
static void StartActorsVector(FlatBufferBuilder builder, int numElems)
static FConfigurable GetRootAsFConfigurable(ByteBuffer _bb)
static void StartFEnvironmentDescription(FlatBufferBuilder builder)
static FEnvironmentDescription GetRootAsFEnvironmentDescription(ByteBuffer _bb, FEnvironmentDescription obj)
static VectorOffset CreateSortedVectorOfFActuator(FlatBufferBuilder builder, Offset< FActuator >[] offsets)
static Offset< FOBS > EndFOBS(FlatBufferBuilder builder)
static void AddSignal(FlatBufferBuilder builder, float signal)
static Offset< FConfigurable > EndFConfigurable(FlatBufferBuilder builder)
static void FinishSizePrefixedFStateBuffer(FlatBufferBuilder builder, Offset< FState > offset)
ArraySegment< byte > GetEnvironmentNameBytes()
static void AddActors(FlatBufferBuilder builder, VectorOffset actorsOffset)
static VectorOffset CreateAvailableObjectivesVector(FlatBufferBuilder builder, Offset< FObjective >[] data)
static Offset< FActor > CreateFActor(FlatBufferBuilder builder, StringOffset actor_nameOffset=default(StringOffset), bool alive=false, VectorOffset actuatorsOffset=default(VectorOffset))
static void AddTerminationReason(FlatBufferBuilder builder, StringOffset terminationReasonOffset)
static FState __lookup_by_key(int vectorLocation, string key, ByteBuffer bb)
static void AddObservation(FlatBufferBuilder builder, int observationOffset)
static FActor GetRootAsFActor(ByteBuffer _bb)
static Offset< FState > CreateFState(FlatBufferBuilder builder, StringOffset environment_nameOffset=default(StringOffset), int frame_number=0, float signal=0.0f, bool terminated=false, StringOffset termination_reasonOffset=default(StringOffset), float total_energy_spent=0.0f, VectorOffset observationsOffset=default(VectorOffset), VectorOffset observablesOffset=default(VectorOffset), Offset< FUnobservables > unobservablesOffset=default(Offset< FUnobservables >), Offset< FEnvironmentDescription > environment_descriptionOffset=default(Offset< FEnvironmentDescription >), StringOffset serialised_messageOffset=default(StringOffset))
ArraySegment< byte > GetObservationNameBytes()
static Offset< FActor > EndFActor(FlatBufferBuilder builder)
static void AddObservations(FlatBufferBuilder builder, VectorOffset observationsOffset)
static FObjective GetRootAsFObjective(ByteBuffer _bb, FObjective obj)
ArraySegment< byte > GetActorNameBytes()
static VectorOffset CreateConfigurablesVectorBlock(FlatBufferBuilder builder, Offset< FConfigurable >[] data)
static void StartConfigurablesVector(FlatBufferBuilder builder, int numElems)
static void AddAvailableObjectives(FlatBufferBuilder builder, VectorOffset availableObjectivesOffset)
static FActuator __lookup_by_key(int vectorLocation, string key, ByteBuffer bb)
static void AddActorName(FlatBufferBuilder builder, StringOffset actorNameOffset)
static VectorOffset CreateObservationsVectorBlock(FlatBufferBuilder builder, Offset< FOBS >[] data)
static VectorOffset CreateActuatorsVectorBlock(FlatBufferBuilder builder, Offset< FActuator >[] data)
static void AddEnergySpentSinceReset(FlatBufferBuilder builder, float energySpentSinceReset)
static Offset< FState > EndFState(FlatBufferBuilder builder)
FActuator ActuatorsByKey(string key)
static FOBS __lookup_by_key(int vectorLocation, string key, ByteBuffer bb)
static void AddFrameNumber(FlatBufferBuilder builder, int frameNumber)
static FActuator GetRootAsFActuator(ByteBuffer _bb, FActuator obj)
static VectorOffset CreateAvailableObjectivesVectorBlock(FlatBufferBuilder builder, Offset< FObjective >[] data)
FConfigurable __assign(int _i, ByteBuffer _bb)
static Offset< FEnvironmentDescription > CreateFEnvironmentDescription(FlatBufferBuilder builder, Offset< FObjective > objectiveOffset=default(Offset< FObjective >), VectorOffset available_objectivesOffset=default(VectorOffset), VectorOffset actorsOffset=default(VectorOffset), VectorOffset configurablesOffset=default(VectorOffset))
static void AddActuators(FlatBufferBuilder builder, VectorOffset actuatorsOffset)
ArraySegment< byte > GetTerminationReasonBytes()
static void AddEnvironmentName(FlatBufferBuilder builder, StringOffset environmentNameOffset)
static FEnvironmentDescription GetRootAsFEnvironmentDescription(ByteBuffer _bb)
static VectorOffset CreateSortedVectorOfFConfigurable(FlatBufferBuilder builder, Offset< FConfigurable >[] offsets)
static void StartFConfigurable(FlatBufferBuilder builder)