/// <inheritdoc /> /// <summary> /// </summary> /// <param name="recipient"></param> public override void ObservationsString(DataPoller recipient) { recipient.PollData( string.Join( "\n\n", this.Observers.Values.Select(e => $"{e.Identifier}:\n{string.Join(",", e.FloatEnumerable)}"))); }
void TryRegister(DataPoller poller, UnityAction <DataPoller> f) { if (poller) { var count = poller.PollEvent.GetPersistentEventCount(); if (this._clean_empty_no_target_events && count > 0) { //poller.PollEvent.RemoveAllListeners(); // Only non-persistant listeners. for (var i = 0; i < count; i++) { if (poller.PollEvent.GetPersistentTarget(i) == null || poller.PollEvent.GetPersistentMethodName(i) == null) { UnityEventTools.RemovePersistentListener(poller.PollEvent, i); } } } count = poller.PollEvent.GetPersistentEventCount(); if (count == 0) { UnityEventTools.AddObjectPersistentListener(poller.PollEvent, f, poller); poller.PollEvent.SetPersistentListenerState(0, this._unity_event_call_state); } else if (count > 0 && poller.PollEvent.GetPersistentTarget(0) != poller) { #if NEODROID_DEBUG if (this.Debugging) { Debug.Log($"PollEvent on {poller} already has a listeners"); } #endif } } }
/// <summary> /// </summary> /// <returns></returns> public void TerminatedBoolean(DataPoller recipient) { if (this._Terminated) { recipient.PollData(true); } recipient.PollData(false); }
/// <inheritdoc /> /// <summary> /// </summary> /// <param name="recipient"></param> public override void ObservationsString(DataPoller recipient) { recipient.PollData(this.CollectState().ToString()); }
/// <summary> /// </summary> /// <returns></returns> public abstract void ObservationsString(DataPoller recipient);
/// <summary> /// </summary> /// <returns></returns> public void FrameString(DataPoller recipient) { recipient.PollData($"{this.CurrentFrameNumber}/{this.EpisodeLength}"); }
/// <summary> /// </summary> /// <returns></returns> public new void SignalString(DataPoller recipient) { recipient.PollData($"{this.LastSignal.ToString(CultureInfo.InvariantCulture)}, {this.EpisodeReturn}"); }
/// <summary> /// </summary> /// <returns></returns> public void SignalString(DataPoller recipient) { recipient.PollData($"{this.LastSignal.ToString(CultureInfo.InvariantCulture)}"); }
/// <inheritdoc /> /// <summary> /// </summary> /// <param name="recipient"></param> public override void ObservationsString(DataPoller recipient) { recipient.PollData(this.Snapshot().ToString()); }
/// <summary> /// </summary> /// <returns></returns> public void FrameString(DataPoller recipient) { recipient.PollData($"{this.StepI}"); }
/// <inheritdoc /> /// <summary> /// </summary> /// <param name="recipient"></param> public override void ObservationsString(DataPoller recipient) { recipient.PollData(string.Join("\n\n", this.Sensors.Values.Select(e => $"{e.Identifier}:\n{e.ToString()}"))); }
public void GetPctArm3(DataPoller recipient) { recipient.PollData(this.GetPctArm(2)); }
public void GetPayoutArm2(DataPoller recipient) { recipient.PollData(this.GetPayoutArm(1)); }
/// <summary> /// </summary> /// <returns></returns> public new void EpisodeLengthString(DataPoller recipient) { recipient.PollData($"{this.EpisodeLength.ToString(CultureInfo.InvariantCulture)}"); }
/// <summary> /// </summary> /// <returns></returns> public void SignalString(DataPoller recipient) { recipient.PollData( $"{this._last_signal.ToString(CultureInfo.InvariantCulture)}, {this._Episode_Return}"); }
/// <summary> /// /// </summary> /// <param name="recipient"></param> public void StatusString(DataPoller recipient) { recipient.PollData(this.GetStatus()); }
/// <summary> /// </summary> /// <returns></returns> public void IdentifierString(DataPoller recipient) { recipient.PollData(this.Identifier); }
/// <summary> /// </summary> /// <returns></returns> public void EpisodeLengthString(DataPoller recipient) { recipient.PollData($""); }
/// <summary> /// </summary> /// <returns></returns> public void EnergyString(DataPoller recipient) { recipient.PollData(this._Energy_Spent.ToString(CultureInfo.InvariantCulture)); }