f8/cpp/tglog.h
aozhiwei ca263c4fa5 1
2020-06-28 19:52:38 +08:00

33 lines
1.0 KiB
C++

#pragma once
namespace f8
{
struct TGLogImpl;
class TGLog : public a8::Singleton<TGLog>
{
private:
TGLog() {};
friend class a8::Singleton<TGLog>;
public:
void Init(const std::string& project_name, bool is_poly_log);
void UnInit();
void SetProjectInfo(const std::string& project_name, bool is_poly_log);
void AddTrackLog(int game_id, const std::string& accountid, unsigned long ip_saddr,
int logclass1, int logclass2, a8::XObject* prop);
void AddTrackLog(int game_id, const std::string& accountid, unsigned long ip_saddr,
const std::string& event_name, a8::XObject* prop);
private:
void SaveToFileThreadProc();
void InternalAddTrackLog(int game_id, const std::string& accountid, unsigned long ip_saddr,
const std::string& event_name, a8::XObject* prop);
private:
std::string project_name_;
bool is_poly_log_ = false;
TGLogImpl* impl_ = nullptr;
};
}