/
githubmirror
/
cmssw
Обзор
Документация
Войти
/
githubmirror
/
cmssw
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
FWCore/ParameterSet/interface/ParameterSetDescriptionFillerBase.h
142 строки
6 KB
Christopher Jones
Removed legacy EDAnalyzer interface
11 янв 2023, 22:29
11 янв 2023, 22:29
870fdfa
Код
Авторство
О чём код?
#ifndef FWCore_ParameterSet_ParameterSetDescriptionFillerBase_h #define FWCore_ParameterSet_ParameterSetDescriptionFillerBase_h // -*- C++ -*- // // Package: ParameterSet // Class : ParameterSetDescriptionFillerBase // /**\class ParameterSetDescriptionFillerBase ParameterSetDescriptionFillerBase.h FWCore/ParameterSet/interface/ParameterSetDescriptionFillerBase.h Description: Base class for a component which can fill a ParameterSetDescription object Usage: This base class provides an abstract interface for filling a ParameterSetDescription object. This allows one to used by the ParameterSetDescriptionFillerPluginFactory to load a component of any type (e.g. cmsRun Source, cmsRun EDProducer or even a tracking plugin) and query the component for its allowed ParameterSetDescription. */ // // Original Author: Chris Jones // Created: Wed Aug 1 16:46:53 EDT 2007 // // system include files // user include files // forward declarations #include "FWCore/ParameterSet/interface/ParameterSetfwd.h" #include <string> namespace edm { namespace one { class EDProducerBase; class EDFilterBase; class EDAnalyzerBase; class OutputModuleBase; } // namespace one namespace stream { class EDProducerBase; class EDFilterBase; class EDAnalyzerBase; } // namespace stream namespace global { class EDProducerBase; class EDFilterBase; class EDAnalyzerBase; class OutputModuleBase; } // namespace global namespace limited { class EDProducerBase; class EDFilterBase; class EDAnalyzerBase; class OutputModuleBase; } // namespace limited class ParameterSetDescriptionFillerBase { public: ParameterSetDescriptionFillerBase() {} ParameterSetDescriptionFillerBase(const ParameterSetDescriptionFillerBase&) = delete; // stop default const ParameterSetDescriptionFillerBase& operator=(const ParameterSetDescriptionFillerBase&) = delete; // stop default virtual ~ParameterSetDescriptionFillerBase(); // ---------- const member functions --------------------- virtual void fill(ConfigurationDescriptions& descriptions) const = 0; virtual const std::string& baseType() const = 0; virtual const std::string& extendedBaseType() const = 0; // ---------- static member functions -------------------- // ---------- member functions --------------------------- static const std::string kBaseForESSource; static const std::string kBaseForESProducer; static const std::string kBaseForEDLooper; protected: static const std::string kEmpty; static const std::string kBaseForService; static const std::string kExtendedBaseForEDAnalyzer; static const std::string kExtendedBaseForEDProducer; static const std::string kExtendedBaseForEDFilter; static const std::string kExtendedBaseForOneEDAnalyzer; static const std::string kExtendedBaseForOneEDProducer; static const std::string kExtendedBaseForOneEDFilter; static const std::string kExtendedBaseForOneOutputModule; static const std::string kExtendedBaseForStreamEDAnalyzer; static const std::string kExtendedBaseForStreamEDProducer; static const std::string kExtendedBaseForStreamEDFilter; static const std::string kExtendedBaseForGlobalEDAnalyzer; static const std::string kExtendedBaseForGlobalEDProducer; static const std::string kExtendedBaseForGlobalEDFilter; static const std::string kExtendedBaseForGlobalOutputModule; static const std::string kExtendedBaseForLimitedEDAnalyzer; static const std::string kExtendedBaseForLimitedEDProducer; static const std::string kExtendedBaseForLimitedEDFilter; static const std::string kExtendedBaseForLimitedOutputModule; static const std::string& extendedBaseType(one::EDAnalyzerBase const*) { return kExtendedBaseForOneEDAnalyzer; } static const std::string& extendedBaseType(one::EDProducerBase const*) { return kExtendedBaseForOneEDProducer; } static const std::string& extendedBaseType(one::EDFilterBase const*) { return kExtendedBaseForOneEDFilter; } static const std::string& extendedBaseType(one::OutputModuleBase const*) { return kExtendedBaseForOneOutputModule; } static const std::string& extendedBaseType(stream::EDAnalyzerBase const*) { return kExtendedBaseForStreamEDAnalyzer; } static const std::string& extendedBaseType(stream::EDProducerBase const*) { return kExtendedBaseForStreamEDProducer; } static const std::string& extendedBaseType(stream::EDFilterBase const*) { return kExtendedBaseForStreamEDFilter; } static const std::string& extendedBaseType(global::EDAnalyzerBase const*) { return kExtendedBaseForGlobalEDAnalyzer; } static const std::string& extendedBaseType(global::EDProducerBase const*) { return kExtendedBaseForGlobalEDProducer; } static const std::string& extendedBaseType(global::EDFilterBase const*) { return kExtendedBaseForGlobalEDFilter; } static const std::string& extendedBaseType(global::OutputModuleBase const*) { return kExtendedBaseForGlobalOutputModule; } static const std::string& extendedBaseType(limited::EDAnalyzerBase const*) { return kExtendedBaseForLimitedEDAnalyzer; } static const std::string& extendedBaseType(limited::EDProducerBase const*) { return kExtendedBaseForLimitedEDProducer; } static const std::string& extendedBaseType(limited::EDFilterBase const*) { return kExtendedBaseForLimitedEDFilter; } static const std::string& extendedBaseType(limited::OutputModuleBase const*) { return kExtendedBaseForLimitedOutputModule; } static const std::string& extendedBaseType(void const*) { return kEmpty; } private: // ---------- member data -------------------------------- }; } // namespace edm #endif