Back to home page

Project CMSSW displayed by LXR

 
 

    


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

0001 #ifndef __L1Trigger_L1THGCal_HGCalProcessorBase_h__
0002 #define __L1Trigger_L1THGCal_HGCalProcessorBase_h__
0003 
0004 #include "L1Trigger/L1THGCal/interface/HGCalProcessorBaseT.h"
0005 
0006 #include "DataFormats/HGCDigi/interface/HGCDigiCollections.h"
0007 #include "DataFormats/L1THGCal/interface/HGCalTriggerCell.h"
0008 #include "DataFormats/L1THGCal/interface/HGCalTriggerSums.h"
0009 #include "DataFormats/L1THGCal/interface/HGCalConcentratorData.h"
0010 #include "DataFormats/L1THGCal/interface/HGCalCluster.h"
0011 #include "DataFormats/L1THGCal/interface/HGCalMulticluster.h"
0012 #include "DataFormats/L1THGCal/interface/HGCalTowerMap.h"
0013 #include "DataFormats/L1THGCal/interface/HGCalTower.h"
0014 
0015 #include <utility>
0016 #include <tuple>
0017 
0018 typedef HGCalProcessorBaseT<HGCalDigiCollection, l1t::HGCalTriggerCellBxCollection> HGCalVFEProcessorBase;
0019 typedef HGCalProcessorBaseT<edm::Handle<l1t::HGCalTriggerCellBxCollection>,
0020                             std::tuple<l1t::HGCalTriggerCellBxCollection,
0021                                        l1t::HGCalTriggerSumsBxCollection,
0022                                        l1t::HGCalConcentratorDataBxCollection>>
0023     HGCalConcentratorProcessorBase;
0024 typedef HGCalProcessorBaseT<edm::Handle<l1t::HGCalTriggerCellBxCollection>, l1t::HGCalClusterBxCollection>
0025     HGCalBackendLayer1ProcessorBase;
0026 typedef HGCalProcessorBaseT<std::pair<uint32_t, std::vector<edm::Ptr<l1t::HGCalTriggerCell>>>,
0027                             std::vector<edm::Ptr<l1t::HGCalTriggerCell>>>
0028     HGCalBackendStage1ProcessorBase;
0029 typedef HGCalProcessorBaseT<edm::Handle<l1t::HGCalClusterBxCollection>,
0030                             std::pair<l1t::HGCalMulticlusterBxCollection, l1t::HGCalClusterBxCollection>>
0031     HGCalBackendLayer2ProcessorBase;
0032 typedef HGCalProcessorBaseT<edm::Handle<l1t::HGCalTriggerSumsBxCollection>, l1t::HGCalTowerMapBxCollection>
0033     HGCalTowerMapProcessorBase;
0034 typedef HGCalProcessorBaseT<
0035     std::pair<edm::Handle<l1t::HGCalTowerMapBxCollection>, edm::Handle<l1t::HGCalClusterBxCollection>>,
0036     l1t::HGCalTowerBxCollection>
0037     HGCalTowerProcessorBase;
0038 
0039 #include "FWCore/PluginManager/interface/PluginFactory.h"
0040 typedef edmplugin::PluginFactory<HGCalVFEProcessorBase*(const edm::ParameterSet&)> HGCalVFEProcessorBaseFactory;
0041 typedef edmplugin::PluginFactory<HGCalConcentratorProcessorBase*(const edm::ParameterSet&)> HGCalConcentratorFactory;
0042 typedef edmplugin::PluginFactory<HGCalBackendLayer1ProcessorBase*(const edm::ParameterSet&)> HGCalBackendLayer1Factory;
0043 typedef edmplugin::PluginFactory<HGCalBackendStage1ProcessorBase*(const edm::ParameterSet&)> HGCalBackendStage1Factory;
0044 typedef edmplugin::PluginFactory<HGCalBackendLayer2ProcessorBase*(const edm::ParameterSet&)> HGCalBackendLayer2Factory;
0045 typedef edmplugin::PluginFactory<HGCalTowerMapProcessorBase*(const edm::ParameterSet&)> HGCalTowerMapFactory;
0046 typedef edmplugin::PluginFactory<HGCalTowerProcessorBase*(const edm::ParameterSet&)> HGCalTowerFactory;
0047 
0048 #endif