File indexing completed on 2023-03-17 10:51:48
0001 #ifndef DETECTOR_DESCRIPTION_PARSER_FIP_CONFIGURATION_H
0002 #define DETECTOR_DESCRIPTION_PARSER_FIP_CONFIGURATION_H
0003
0004 #include <map>
0005 #include <string>
0006 #include <vector>
0007
0008 #include "DetectorDescription/Core/interface/DDCompactView.h"
0009 #include "DetectorDescription/Parser/interface/DDLDocumentProvider.h"
0010 #include "DetectorDescription/Parser/interface/DDLSAX2ConfigHandler.h"
0011
0012 class DDCompactView;
0013 class DDLParser;
0014 class DDLSAX2ConfigHandler;
0015 class DDLSAX2Handler;
0016
0017
0018
0019
0020
0021
0022
0023
0024
0025
0026
0027 class FIPConfiguration : public DDLDocumentProvider {
0028 public:
0029 FIPConfiguration(DDCompactView& cpv);
0030 ~FIPConfiguration() override;
0031
0032
0033 int readConfig(const std::string& filename) override;
0034
0035
0036 int readConfig(const std::string& filename, bool fullPath);
0037
0038
0039 const std::vector<std::string>& getFileList(void) const override;
0040
0041
0042
0043
0044
0045 const std::vector<std::string>& getURLList(void) const override;
0046
0047
0048 void dumpFileList(void) const override;
0049
0050
0051 bool doValidation() const override;
0052
0053
0054 std::string getSchemaLocation() const override;
0055
0056 private:
0057 DDLSAX2ConfigHandler configHandler_;
0058 std::vector<std::string> files_;
0059 std::vector<std::string> urls_;
0060 DDCompactView& cpv_;
0061 };
0062
0063 #endif