Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:10:53

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 }  // namespace l1t
0023 
0024 #define DEFINE_L1T_PACKING_SETUP(type) DEFINE_EDM_PLUGIN(l1t::PackingSetupFactoryT, type, #type)
0025 
0026 #endif