File indexing completed on 2024-09-07 04:36:15
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