summaryrefslogtreecommitdiffstats
path: root/src/CRSMStats.cpp
diff options
context:
space:
mode:
authorMarkus Mittendrein <git@maxmitti.tk>2015-10-27 12:42:19 +0100
committerMarkus Mittendrein <git@maxmitti.tk>2015-10-27 12:42:19 +0100
commit4e30841039bb7c3efe5558e40cba8375baad30f7 (patch)
tree40850a3816e537a60e1037eff29f54245cae23fc /src/CRSMStats.cpp
parentb5f799707482bee75bcf1f32c9aa509c96b6d1a7 (diff)
downloadmanager-4e30841039bb7c3efe5558e40cba8375baad30f7.tar.gz
manager-4e30841039bb7c3efe5558e40cba8375baad30f7.zip
Begin adding basic stats
Diffstat (limited to 'src/CRSMStats.cpp')
-rw-r--r--src/CRSMStats.cpp66
1 files changed, 65 insertions, 1 deletions
diff --git a/src/CRSMStats.cpp b/src/CRSMStats.cpp
index 86c541c..7add773 100644
--- a/src/CRSMStats.cpp
+++ b/src/CRSMStats.cpp
@@ -1,7 +1,71 @@
#include "CRSMStats.hpp"
-CRSMStats::CRSMStats()
+void CRSMStats::AddScenarioWish(const ClientInfo &client, const QString &scenarioFileName)
{
+ Scenarios[scenarioFileName].FileName = scenarioFileName;
+ ++Scenarios[scenarioFileName].Sum.WishCount;
+ ++Scenarios[scenarioFileName].Wishers[client].WishCount;
+ Users[client].Client = client;
+ ++Users[client].ScenarioWishes[scenarioFileName].WishCount;
+ ++Users[client].WishSum.WishCount;
}
+void CRSMStats::AddScenarioStart(const ClientInfo &client, const QString &scenarioFileName)
+{
+ Scenarios[scenarioFileName].FileName = scenarioFileName;
+ ++Scenarios[scenarioFileName].Sum.StartCount;
+ ++Scenarios[scenarioFileName].Wishers[client].StartCount;
+
+ Users[client].Client = client;
+ ++Users[client].ScenarioWishes[scenarioFileName].StartCount;
+ ++Users[client].WishSum.StartCount;
+}
+
+void CRSMStats::AddCommandResult(const ClientInfo &client, const QString &cmd, CmdResult result)
+{
+ Users[client].Client = client;
+
+ if(result != UnknownCommand)
+ {
+ Commands[cmd].Command = cmd;
+ ++Commands[cmd].Sum.UseCount;
+ ++Commands[cmd].Users[client].UseCount;
+
+ ++Users[client].CommandSum.UseCount;
+ ++Users[client].Commands[cmd].UseCount;
+ }
+ else
+ {
+ FailCommands[cmd].Command = cmd;
+ ++FailCommands[cmd].Sum;
+ ++FailCommands[cmd].Users[client];
+
+ ++Users[client].FailCommands[cmd];
+ }
+
+ if(result == Success)
+ {
+ ++Commands[cmd].Sum.SuccessCount;
+ ++Commands[cmd].Users[client].SuccessCount;
+
+ ++Users[client].CommandSum.SuccessCount;
+ ++Users[client].Commands[cmd].SuccessCount;
+ }
+ else if(result == RightsFail)
+ {
+ ++Commands[cmd].Sum.RightsFailCount;
+ ++Commands[cmd].Users[client].RightsFailCount;
+
+ ++Users[client].CommandSum.RightsFailCount;
+ ++Users[client].Commands[cmd].RightsFailCount;
+ }
+ else if(result == SyntaxFail)
+ {
+ ++Commands[cmd].Sum.SyntaxFailCount;
+ ++Commands[cmd].Users[client].SyntaxFailCount;
+
+ ++Users[client].CommandSum.SyntaxFailCount;
+ ++Users[client].Commands[cmd].SyntaxFailCount;
+ }
+}