static void GetSession(bool *error) { LogMsg(100,LogLevel,LogFile,"Spooling a session event"); int sum = 0; VmonVenusId Venus; VmonSessionId Session; VolumeId Volume; UserId User; VmonAVSG AVSG; RPC2_Unsigned StartTime; RPC2_Unsigned EndTime; RPC2_Unsigned CETime; VmonSessionEventArray Events; SessionStatistics Stats; CacheStatistics CacheStats; sum = ReadSessionRecord(&Venus, &Session, &Volume, &User, &AVSG, &StartTime, &EndTime, &CETime, &Events, &Stats, &CacheStats); if (sum == 0) LogMsg(100,LogLevel,LogFile,"Spooling a session: [%lu 0x%lx %d %lu]", Session, Volume, User, CETime); sum = ReportSession(&Venus, Session, Volume, User, &AVSG, StartTime, EndTime, CETime, &Events, &Stats, &CacheStats); if (sum !=0) { *error = mtrue; } }
void CGameStats::StartSession() { m_roundStats.reset(new SRoundStats()); m_startReportNeeded = true; if(!m_statsTrack || !m_serverReport) Init(); if(!m_reportStarted && !m_startReportNeeded)//OnLoadingStart was not able to start report m_startReportNeeded = true; ReportSession(); }
IHostMigrationEventListener::EHostMigrationReturn CGameStats::OnPromoteToServer(SHostMigrationInfo& hostMigrationInfo, HMStateType& state) { if (!hostMigrationInfo.ShouldMigrateNub()) { return IHostMigrationEventListener::Listener_Done; } // Set up server side stats and start reporting the game on LAN browsers Init(); ReportSession(); return IHostMigrationEventListener::Listener_Done; }