// Copyright Epic Games, Inc. All Rights Reserved. #pragma once #include "config/config.h" #include #include namespace zen { class StatsDaemonClient; class StatsReporter { public: StatsReporter(); ~StatsReporter(); StatsReporter& operator=(const StatsReporter&) = delete; StatsReporter(const StatsReporter&) = delete; void Initialize(const ZenStatsConfig& Config); void Shutdown(); void ReportStats(); void AddProvider(StatsProvider* Provider); private: RwLock m_Lock; std::unique_ptr m_Statsd; std::vector m_Providers; }; } // namespace zen