00001 /* 00002 SagaEngine library 00003 Copyright (c) 2002-2006 Skalden Studio AS 00004 00005 This software is provided 'as-is', without any express or implied 00006 warranty. In no event will the authors be held liable for any 00007 damages arising from the use of this software. 00008 00009 Permission is granted to distribute the library under the terms of the 00010 Q Public License version 1.0. Be sure to read and understand the license 00011 before using the library. It should be included here, or you may read it 00012 at http://www.trolltech.com/products/qt/licenses/licensing/qpl 00013 00014 The original version of this library can be located at: 00015 http://www.sagaengine.com/ 00016 00017 Rune Myrland 00018 rune@skalden.com 00019 */ 00020 00021 00022 #include "IoSchema.hpp" 00023 #include "../parse/all.hpp" 00024 #include "../encode/EncodeManager.hpp" 00025 #include "../stream/FileManager.hpp" 00026 #include "sim/schema/SimSchema.hpp" 00027 00028 namespace se_core { 00029 namespace IoSchema { 00030 ParseManager& parser() { 00031 static ParseManager parser; 00032 return parser; 00033 } 00034 00035 EncodeManager& encoder() { 00036 static EncodeManager encoder; 00037 return encoder; 00038 } 00039 00040 // Platform dependent layer must override 00041 // FileManager and register its subclass here 00042 FileManager* fileManager = 0; 00043 00044 const char* saveName = 0; 00045 const char* dataPath = 0; 00046 00047 00048 bool init() { 00049 // Create parser manager object 00050 parser(); 00051 00052 // Create encoder object 00053 encoder(); 00054 00055 // Create a few file parsers 00056 static CutsceneParser cpm(IoSchema::parser()); 00057 static DictionaryParser dpm(IoSchema::parser()); 00058 static EmbeddedParser epm(IoSchema::parser()); 00059 static CompositeParser cspm(IoSchema::parser()); 00060 00061 // Return success 00062 return true; 00063 } 00064 00065 void cleanup() { 00066 } 00067 00068 00069 void touch() { 00070 SimSchema::touch(); 00071 parser(); 00072 encoder(); 00073 } 00074 } 00075 }
Home Page | SagaEngine trunk (updated nightly) reference generated Sun Dec 2 20:06:10 2007 by Doxygen version 1.3.9.1.