#pragma once
#include <boost/unordered_map.hpp>
#include <vector>
struct M_ActivExchangeData
{
	//ID
	int mID;
	//兑换所需物品
	std::vector<int> mExchangeItems;
	//所需物品数量
	std::vector<int> mQuantityRequired;
	//兑换获得物品
	int mGetItems;
	//获得物品数量
	int mGetQuantity;
};

class M_ActivExchange
{
public:
private:
	static std::auto_ptr<M_ActivExchange> msSingleton;
public:
	int GetCount();
	const M_ActivExchangeData* GetData(int ID);
	boost::unordered_map<int, M_ActivExchangeData>& GetMapData();
	void Reload();
	void Load(const std::string& path);
	void Load();
	static M_ActivExchange* GetSingleton();
private:
	boost::unordered_map<int, M_ActivExchangeData> mMapData;
};
