EventsMappingLoader.h

Go to the documentation of this file.
00001 // Copyright CERN 2012 - Developed in collaboration with GSI
00002 
00003 #ifndef _FESA_PARSER_HPP_
00004 #define _FESA_PARSER_HPP_
00005 
00006 #include <string>
00007 #include <vector>
00008 #include <map>
00009 #include <boost/shared_ptr.hpp>
00010 #include <fesa-core/Utilities/ParserElements/ClassElement.h>
00011 
00012 namespace fesa
00013 {
00014 
00015 class XMLParser;
00016 class AbstractRTDeviceClass;
00017 
00018 //Path to navigate through the Instantiation-File
00019 const std::string CLASS_BASE_PATH = "/instantiation-unit/classes/";
00020 
00025 class EventsMappingLoader
00026 {
00027         public:
00028 
00034                 EventsMappingLoader(boost::shared_ptr<ClassElement> classElement,XMLParser* parser);
00035 
00036                 ~EventsMappingLoader();
00037 
00041                 EventMap getEventMap() const;
00042 
00046                 std::vector< EventElementPointer > getEventElementCol(const std::string& logicalEventName) const;
00047 
00048         protected:
00049 
00053                 void loadEventsMapping(XMLParser* parser);
00054 
00055                 void deleteXMLElements(std::vector<ElementXML*>* xmlElements) const;
00056 
00057         private:
00058 
00062                 boost::shared_ptr<ClassElement> classElement_;
00063 };
00064 
00065 } // fesa
00066 #endif

Generated on 18 Jan 2013 for Fesa by  doxygen 1.6.1