protected void OnStartRenderLoop(RSResponse resp) { if (resp.IsErrorResponse) { Logger.Log("error", "Error starting render loop: " + resp.ErrorMessage); Status("error", "Error starting render loop"); return; } Status("info", "Waiting for first render"); RenderLoopRunning = true; NextRenderTimer = new Timer(); NextRenderTimer.Interval = RenderLoopInterval; NextRenderTimer.Elapsed += new ElapsedEventHandler((object source, ElapsedEventArgs e) => { GetNextRenderLoopRender(); }); if (RenderLoopTimeout > 100) { PollResultTimer = new Timer(); PollResultTimer.Interval = RenderLoopTimeout * 1000 / 3; PollResultTimer.Elapsed += new ElapsedEventHandler((object source, ElapsedEventArgs e) => { GetPollResult(); }); PollResultTimer.Start(); } RestartLoop(); }
protected void OnRender(RSResponse resp) { if (resp.IsErrorResponse) { return; } DisplayRender = true; }
public override void DispatchResponse(RSResponse response, ref RSQuery query) { switch (response.ResponseType) { case RSResponseType.Say: Debug.Log("saying " + response.ResponseValue); break; case RSResponseType.Log: Debug.Log(response.ResponseValue); break; default: Debug.Log(response.ResponseType + " - " + response.ResponseValue); break; } }
protected void OnStartRenderLoop(RSResponse resp) { if (resp.IsErrorResponse) { Logger.Log("error", "Error starting render loop: " + resp.ErrorMessage); Status("error", "Error starting render loop"); return; } Status("info", "Waiting for first render"); RenderLoopRunning = true; UpdatePollResult = true; RestartLoop(); }
protected void OnGetRenderLoopRender(RSResponse resp) { if (Scene.IsShutdown) { return; } // Ignore these renders. if (LastRenderTime > NextRenderTime && OnRender != null && (bool)((Hashtable)resp.ServerResponse)["valid"] == true) { OnRender(resp); } if (resp.IsErrorResponse) { if (ReceivedFirstRender) { Logger.Log("error", "Error getting render loop render."); Status("error", "Error retrieving render"); UpdateNextRender = false; } UpdateNextRender = true; return; } LastRenderResultCounter++; if (LastRenderResultCounter > 5) { LastRenderResultCounter = 0; GetLastRenderResult(); } if (!ReceivedFirstRender) { Status("render", ""); } ReceivedFirstRender = true; if (!IsConverged) { UpdateNextRender = true; } }
protected void OnGetRenderLoopRender(RSResponse resp) { if (Scene.IsShutdown) { return; } // Ignore these renders. if (LastRenderTime > NextRenderTime && OnRender != null) { OnRender(resp); } if (resp.IsErrorResponse) { if (ReceivedFirstRender) { Logger.Log("error", "Error getting render loop render."); Status("error", "Error retrieving render"); NextRenderTimer.Stop(); } NextRenderTimer.Start(); return; } LastRenderResultCounter++; if (LastRenderResultCounter > 5) { LastRenderResultCounter = 0; GetLastRenderResult(); } if (!ReceivedFirstRender) { Status("render", ""); } ReceivedFirstRender = true; if (!IsConverged) { NextRenderTimer.Start(); } }