Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:15:31

0001 #ifndef GeometryConfiguration_H
0002 #define GeometryConfiguration_H
0003 
0004 #include "DetectorDescription/Parser/interface/DDLDocumentProvider.h"
0005 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0006 
0007 class DDLParser;
0008 
0009 #include <string>
0010 #include <vector>
0011 #include <memory>
0012 
0013 /**
0014    May 23, 2006:  Michael Case:
0015    This class provides the filenames to the DDLParser from the
0016    parameter-set passed by XMLIdealGeometryESSource.  This removes 
0017    the dependency on the Configuration Language of the DDD and moves
0018    the list of XML files to the parameter-set for provenance.
0019  **/
0020 class GeometryConfiguration : public DDLDocumentProvider {
0021 public:
0022   GeometryConfiguration(const edm::ParameterSet& p);
0023 
0024   ~GeometryConfiguration() override;
0025 
0026   /// Print out the list of files.
0027   void dumpFileList(void) const override;
0028 
0029   /// Return a list of files as a vector of strings.
0030   const std::vector<std::string>& getFileList(void) const override;
0031 
0032   /// Return a list of urls as a vector of strings.
0033   /**
0034      The EDM should not allow URLs because of provenance.
0035      This vector will always be empty.
0036    **/
0037   const std::vector<std::string>& getURLList(void) const override;
0038 
0039   /// Return a flag whether to do xml validation or not.
0040   bool doValidation() const override;
0041 
0042   /// Return the Schema Location.
0043   std::string getSchemaLocation() const override;
0044 
0045   /// Reads in a configuration file and parses it
0046   int readConfig(const std::string& filename) override;
0047 
0048 protected:
0049 private:
0050   std::vector<std::string> files_;
0051   std::vector<std::string> relFiles_;
0052   std::vector<std::string> emptyStrings_;
0053   std::string dummyLocation_;
0054 };
0055 
0056 #endif