File indexing completed on 2023-03-17 11:00:07
0001 #ifndef EventFilter_L1TRawToDigi_PackingSetupFactory_h
0002 #define EventFilter_L1TRawToDigi_PackingSetupFactory_h
0003
0004 #include "FWCore/PluginManager/interface/PluginFactory.h"
0005
0006 #include "EventFilter/L1TRawToDigi/interface/PackingSetup.h"
0007
0008 namespace l1t {
0009 typedef PackingSetup*(prov_fct)();
0010 typedef edmplugin::PluginFactory<prov_fct> PackingSetupFactoryT;
0011
0012 class PackingSetupFactory {
0013 public:
0014 static const PackingSetupFactory* get() { return &instance_; };
0015 std::unique_ptr<PackingSetup> make(const std::string&) const;
0016 void fillDescription(edm::ParameterSetDescription&) const;
0017
0018 private:
0019 PackingSetupFactory(){};
0020 static const PackingSetupFactory instance_;
0021 };
0022 }
0023
0024 #define DEFINE_L1T_PACKING_SETUP(type) DEFINE_EDM_PLUGIN(l1t::PackingSetupFactoryT, type, #type)
0025
0026 #endif