private void Con_onStatsUpdate(object sender, ObsStats e) { this.Dispatcher.Invoke(() => { tbOutput.Text += "OBS STATS:\n"; tbOutput.Text += "\tFPS: " + e.fps + "\n"; tbOutput.Text += "\tRender Total: " + e.rendertotal + "\n"; tbOutput.Text += "\tRender Missed: " + e.rendermissed + "\n"; tbOutput.Text += "\tOutput Total: " + e.outputtotal + "\n"; tbOutput.Text += "\tOutput Skipped: " + e.outputskipped + "\n"; tbOutput.Text += "\tAvg frametime: " + e.frametime + "\n"; tbOutput.Text += "-----------------------------------------\n"; tbOutput.Text += "\tCPU Usage: " + e.cpu + "%\n"; tbOutput.Text += "\tMemory Usage: " + e.memory + "MB\n"; tbOutput.Text += "\tFree Diskspace: " + e.disk + "MB\n"; }); }
private void wsMessage(object sender, MessageEventArgs e) { Dictionary <string, object> response = JsonConvert.DeserializeObject <Dictionary <string, object> >(e.Data); if (response.ContainsKey("message-id")) { if (response["message-id"].Equals(RequestType.getstats)) { ObsStats stats = ((JObject)response["stats"]).ToObject <ObsStats>(); onStats?.Invoke(this, stats); } //Console.Out.WriteLine(e.Data); handleResponse(response); } else if (response.ContainsKey("update-type")) { //Console.Out.WriteLine(e.Data); handleEvent(response); } }
private void updateStats(JObject stats) { this.stats = JsonConvert.DeserializeObject <ObsStats>(stats.ToString()); onStatsUpdate?.Invoke(this, this.stats); }