Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:20:38

0001 #ifndef __L1Trigger_L1THGCal_HGCalTriggerClusterIdentificationBase_h__
0002 #define __L1Trigger_L1THGCal_HGCalTriggerClusterIdentificationBase_h__
0003 
0004 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0005 #include "DataFormats/L1THGCal/interface/HGCalMulticluster.h"
0006 
0007 class HGCalTriggerClusterIdentificationBase {
0008 public:
0009   HGCalTriggerClusterIdentificationBase(){};
0010   virtual ~HGCalTriggerClusterIdentificationBase(){};
0011   virtual void initialize(const edm::ParameterSet& conf) = 0;
0012   virtual float value(const l1t::HGCalMulticluster& cluster) const = 0;
0013   virtual bool decision(const l1t::HGCalMulticluster& cluster, unsigned wp = 0) const = 0;
0014   virtual const std::vector<std::string>& working_points() const = 0;
0015 };
0016 
0017 #include "FWCore/PluginManager/interface/PluginFactory.h"
0018 typedef edmplugin::PluginFactory<HGCalTriggerClusterIdentificationBase*()> HGCalTriggerClusterIdentificationFactory;
0019 
0020 #define DEFINE_HGC_TPG_CLUSTER_ID(type, name) DEFINE_EDM_PLUGIN(HGCalTriggerClusterIdentificationFactory, type, name)
0021 
0022 #endif