mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2026-10-07 05:13:44 +00:00
The NexusDashboard-parity dashboard (dDashboardServer) and everything built on it on the experimental branch: accounts, characters, properties and moderation tools, permissions shared with in-game slash commands, economy reports, World 3D and property 3D views with client scenery, scheduled events (features, vanity changes, live events, announcements, restarts), vanity files and events, the CDClient browser, the message inspector with saved captures, chat filter tools, community challenges, live ops, the AI moderator helper, and the server-side changes they need. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
37 lines
970 B
C++
37 lines
970 B
C++
#ifndef __IDASHBOARDSTATS__H__
|
|
#define __IDASHBOARDSTATS__H__
|
|
|
|
#include <cstdint>
|
|
|
|
class IDashboardStats {
|
|
public:
|
|
// Cheap aggregate values the dashboard compares between ticks to detect changes made by any writer
|
|
// (game servers, other tools). A table is considered changed when any of its values differ.
|
|
struct Snapshot {
|
|
uint64_t accounts{};
|
|
uint64_t accountsMaxId{};
|
|
uint64_t characters{};
|
|
uint64_t pendingNames{};
|
|
uint64_t properties{};
|
|
uint64_t pendingProperties{};
|
|
uint64_t playKeys{};
|
|
uint64_t bugReports{};
|
|
uint64_t unresolvedBugReports{};
|
|
uint64_t petNames{};
|
|
uint64_t pendingPetNames{};
|
|
uint64_t activityLogMaxId{};
|
|
uint64_t chatLogMaxId{};
|
|
uint64_t commandLogMaxId{};
|
|
uint64_t auditLogMaxId{};
|
|
uint64_t mailMaxId{};
|
|
uint64_t openEconomyFlags{};
|
|
uint64_t economyFlagsMaxId{};
|
|
|
|
bool operator==(const Snapshot&) const = default;
|
|
};
|
|
|
|
virtual Snapshot GetDashboardSnapshot() = 0;
|
|
};
|
|
|
|
#endif //!__IDASHBOARDSTATS__H__
|