#pragma once
#include <map>
struct M_ChannelCFGData
{
	//渠道ID
	std::string mID;
	//支付方式
	int mIsPayWeb;
	//显示UI界面
	int mShowUI;
	//描述信息
	std::string mDesc;
	//游戏名
	std::string mName;
	//版本名
	std::string mVersionName;
	//版本code
	int mVersionCode;
	//登录地址
	std::string mPath;
	//平台
	std::string mPlatform;
	//包名
	std::string mPackageName;
	//游戏标题
	std::string mLogo;
	//闪屏
	bool mEnableSplash;
	//实名认证
	bool mEnableRealName;
	//闪屏文字
	std::string mInfo;
	//贡献
	int mChargingCharge;
	//公司归属隐私协议相关
	std::string mCompany;
	//兑换相关
	int mExchangeLimit;
	//排行显示
	int mRankShow;
};

class M_ChannelCFG
{
public:
private:
	static std::auto_ptr<M_ChannelCFG> msSingleton;
public:
	int GetCount();
	const M_ChannelCFGData* GetData(std::string ID);
	const std::map<std::string, M_ChannelCFGData>& GetMapData();
	void Load();
	void LoadLua();
	void Reload();
	static M_ChannelCFG* GetSingleton();
	static void Release();
private:
	std::map<std::string, M_ChannelCFGData> mMapData;
};
