#ifndef EntityXMLFilePreprocessor_h__ #define EntityXMLFilePreprocessor_h__ #include #include #include #include #include #include #include #include #include #include #include #include #include "Util/XercesString.h" #include "ResourceManager.h" #include "World.h" #include "EntityXMLFile.h" class EntityXMLFilePreprocessor { public: EntityXMLFilePreprocessor(const EntityXMLFile* entityFile); void RegisterComponents(World* world); private: const EntityXMLFile* m_EntityFile; std::map m_ComponentCounts; std::map m_ComponentInfo; void onStartComponent(EntityID entity, std::string type); void parseComponentInfo(); void parseDefaults(); std::string parseAnnotationXML(const XMLCh* xml); }; #endif