Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-10-25 10:00:47

0001 #ifndef RecoSelectors_StripClusterSelectorTopBottom_h
0002 #define RecoSelectors_StripClusterSelectorTopBottom_h
0003 
0004 /* \class StripClusterSelectorTopBottom
0005 *
0006 * \author Giuseppe Cerati, INFN
0007 *
0008 *
0009 */
0010 
0011 #include "DataFormats/SiStripCluster/interface/SiStripCluster.h"
0012 
0013 #include "FWCore/Framework/interface/global/EDProducer.h"
0014 #include "FWCore/Framework/interface/Event.h"
0015 #include "DataFormats/Common/interface/Handle.h"
0016 
0017 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0018 
0019 #include "DataFormats/SiStripCluster/interface/SiStripCluster.h"
0020 #include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h"
0021 #include "Geometry/Records/interface/TrackerDigiGeometryRecord.h"
0022 #include "Geometry/TrackerGeometryBuilder/interface/StripGeomDetUnit.h"
0023 #include "Geometry/CommonTopologies/interface/StripTopology.h"
0024 #include "DataFormats/DetId/interface/DetId.h"
0025 #include "FWCore/Utilities/interface/InputTag.h"
0026 #include "DataFormats/Common/interface/DetSetVectorNew.h"
0027 
0028 class StripClusterSelectorTopBottom : public edm::global::EDProducer<> {
0029 public:
0030   explicit StripClusterSelectorTopBottom(const edm::ParameterSet& cfg)
0031       : tTrackerGeom_(esConsumes<TrackerGeometry, TrackerDigiGeometryRecord>()),
0032         token_(consumes<edmNew::DetSetVector<SiStripCluster>>(cfg.getParameter<edm::InputTag>("label"))),
0033         y_(cfg.getParameter<double>("y")) {
0034     produces<edmNew::DetSetVector<SiStripCluster>>();
0035   }
0036 
0037   void produce(edm::StreamID, edm::Event& event, const edm::EventSetup& setup) const override;
0038 
0039 private:
0040   edm::ESGetToken<TrackerGeometry, TrackerDigiGeometryRecord> const tTrackerGeom_;
0041   edm::EDGetTokenT<edmNew::DetSetVector<SiStripCluster>> token_;
0042   double y_;
0043 };
0044 
0045 #endif