/// <summary> /// /// </summary> /// <param name="states"></param> /// <param name="simulator_configuration"></param> /// <param name="serialise_indidual_observables"></param> /// <param name="do_serialise_unobservables"></param> /// <param name="api_version"></param> /// <returns></returns> public static byte[] serialise_states( EnvironmentState[] states, SimulatorConfigurationMessage simulator_configuration = null, bool serialise_indidual_observables = false, bool do_serialise_unobservables = false, string api_version = "") { var b = new FlatBufferBuilder(1); var state_offsets = new Offset <FState> [states.Length]; var i = 0; foreach (var state in states) { state_offsets[i++] = serialise_state( b, state, serialise_indidual_observables, do_serialise_unobservables); } var states_vector_offset = FStates.CreateStatesVector(b, state_offsets); var api_version_offset = b.CreateString(api_version); FStates.StartFStates(b); FStates.AddStates(b, states_vector_offset); FStates.AddApiVersion(b, api_version_offset); FStates.AddSimulatorConfiguration(b, serialise_simulator_configuration(b, simulator_configuration)); var states_offset = FStates.EndFStates(b); FStates.FinishFStatesBuffer(b, states_offset); return(b.SizedByteArray()); }
public static FStates GetRootAsFStates(ByteBuffer _bb, FStates obj) { return(obj.__assign(_bb.GetInt(_bb.Position) + _bb.Position, _bb)); }