CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_0/src/DetectorDescription/Parser/interface/DDLSAX2ConfigHandler.h

Go to the documentation of this file.
00001 #ifndef DDL_SAX2ConfigHandler_H
00002 #define DDL_SAX2ConfigHandler_H
00003 
00004 // ---------------------------------------------------------------------------
00005 //  Includes
00006 // ---------------------------------------------------------------------------
00007 #include "DetectorDescription/Parser/interface/DDLSAX2Handler.h"
00008 
00009 // DDCore parts
00010 #include "DetectorDescription/Core/interface/DDName.h"
00011 #include "DetectorDescription/Core/interface/DDCompactView.h"
00012 
00013 #include <vector>
00014 #include <string>
00015 
00016 // Xerces C++ dependencies
00017 #include <xercesc/sax2/Attributes.hpp>
00018 
00020 
00030 class DDLSAX2ConfigHandler : public DDLSAX2Handler
00031 {
00032 
00033  public:
00034 
00035   // -----------------------------------------------------------------------
00036   //  Constructor and Destructor
00037   // -----------------------------------------------------------------------
00038   DDLSAX2ConfigHandler( DDCompactView& cpv);
00039   ~DDLSAX2ConfigHandler();
00040 
00041   // -----------------------------------------------------------------------
00042   //  Handlers for the SAX ContentHandler interface
00043   // -----------------------------------------------------------------------
00044   void startElement(const XMLCh* const uri, const XMLCh* const localname
00045                     , const XMLCh* const qname, const Attributes& attrs);
00046 
00047   const std::vector<std::string>& getFileNames() const;
00048   const std::vector<std::string>& getURLs() const;
00049   const std::string getSchemaLocation() const;
00050   const bool doValidation() const;
00051 
00052  private:
00053   bool doValidation_;
00054   std::vector<std::string> files_;
00055   std::vector<std::string> urls_;
00056   std::string schemaLocation_;
00057   DDCompactView& cpv_;
00058 
00059 };
00060 
00061 #endif