1 /*!
2 	@file
3 	@author		Albert Semenov
4 	@date		07/2012
5 */
6 
7 #include "Precompiled.h"
8 #include "ExportManager.h"
9 #include "SettingsManager.h"
10 #include "FactoryManager.h"
11 
12 template <> tools::ExportManager* MyGUI::Singleton<tools::ExportManager>::msInstance = nullptr;
13 template <> const char* MyGUI::Singleton<tools::ExportManager>::mClassTypeName = "ExportManager";
14 
15 namespace tools
16 {
17 
ExportManager()18 	ExportManager::ExportManager() :
19 		mExportSerializer(nullptr)
20 	{
21 	}
22 
initialise()23 	void ExportManager::initialise()
24 	{
25 		std::string serializer = SettingsManager::getInstance().getValue("Editor/ExportSerializer");
26 		mExportSerializer = components::FactoryManager::GetInstance().CreateItem<IExportSerializer>(serializer);
27 	}
28 
shutdown()29 	void ExportManager::shutdown()
30 	{
31 		delete mExportSerializer;
32 		mExportSerializer = nullptr;
33 	}
34 
serialization(pugi::xml_document & _doc)35 	void ExportManager::serialization(pugi::xml_document& _doc)
36 	{
37 		if (mExportSerializer != nullptr)
38 			mExportSerializer->serialization(_doc);
39 	}
40 
deserialization(pugi::xml_document & _doc)41 	bool ExportManager::deserialization(pugi::xml_document& _doc)
42 	{
43 		if (mExportSerializer != nullptr)
44 			return mExportSerializer->deserialization(_doc);
45 		return false;
46 	}
47 
48 }
49