#pragma once
#include <memory>
#include <mof/script/ObjectData.hpp>

//namespace mof
//{
//namespace script
//{

	class sqlite_wrapper
	{
		struct impl;
		std::unique_ptr<impl> pimpl_;
	public:
		sqlite_wrapper();
		~sqlite_wrapper();

		mof::script::GameData::ptr query_item_profile();
		mof::script::GameData::ptr query_relic_profile();
		mof::script::GameData::ptr query_ideal_profile();
		mof::script::GameData::ptr query_area_service(float ehves, float bolony, float stra);
		mof::script::GameData::ptr query_service_info(int service_id, int grade);
		mof::script::GameData::ptr query_shop_list(int service_id, int grade);
		mof::script::GameData::ptr query_ideal_church_recipe(int item_id);
		mof::script::GameData::ptr query_area_profile(int x, int y);
		mof::script::GameData::ptr query_main_profile();
		mof::script::GameData::ptr query_history_profile();
		void insert_history_profile(int x, int y, const mof::tstring& event);
		void update_main_profile(const mof::script::GameData::ptr& game_data);
		void save();
	};

//}// namespace script
//}// namespace mof
