CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_2_9/src/RecoMuon/MuonSeedGenerator/src/RPCSeedrecHitFinder.h

Go to the documentation of this file.
00001 #ifndef RecoMuon_MuonSeedGenerator_RPCSeedrecHitFinder_H
00002 #define RecoMuon_MuonSeedGenerator_RPCSeedrecHitFinder_H
00003 
00012 #include "RecoMuon/MuonSeedGenerator/src/RPCSeedFinder.h"
00013 #include <RecoMuon/TransientTrackingRecHit/interface/MuonTransientTrackingRecHit.h>
00014 #include <FWCore/ParameterSet/interface/ParameterSet.h>
00015 
00016 
00017 #ifndef RPCLayerNumber
00018 #define RPCLayerNumber 12
00019 #endif
00020 
00021 #ifndef BarrelLayerNumber
00022 #define BarrelLayerNumber 6
00023 #endif
00024 
00025 #ifndef EachEndcapLayerNumber
00026 #define EachEndcapLayerNumber 3
00027 #endif
00028 
00029 class RPCSeedrecHitFinder {
00030 
00031     typedef MuonTransientTrackingRecHit::MuonRecHitPointer MuonRecHitPointer;
00032     typedef MuonTransientTrackingRecHit::ConstMuonRecHitPointer ConstMuonRecHitPointer;
00033     typedef MuonTransientTrackingRecHit::MuonRecHitContainer MuonRecHitContainer;
00034     typedef MuonTransientTrackingRecHit::ConstMuonRecHitContainer ConstMuonRecHitContainer;
00035 
00036     public:
00037         RPCSeedrecHitFinder();
00038         ~RPCSeedrecHitFinder();
00039         void configure(const edm::ParameterSet& iConfig);
00040         void setInput(MuonRecHitContainer (&recHits)[RPCLayerNumber]);
00041         void unsetInput();
00042         void setOutput(RPCSeedFinder *Seed);
00043         void setLayers(const std::vector<unsigned int>& Layers);
00044         void fillrecHits();
00045     private:
00046         void complete(unsigned int LayerIndex);
00047         double getdeltaPhifromrecHits();
00048         void checkandfill();
00049 
00050         // ----------member data ---------------------------
00051 
00052         // parameters for configuration
00053         unsigned int BxRange;
00054         double MaxDeltaPhi;
00055         std::vector<int> ClusterSet;
00056         // Signal for call fillrecHits()
00057         bool isLayerset;
00058         bool isConfigured;
00059         bool isInputset;
00060         bool isOutputset;
00061         // Enable layers in Barrel and Endcap
00062         std::vector<unsigned int> LayersinRPC;
00063         MuonRecHitContainer* recHitsRPC[RPCLayerNumber];
00064         ConstMuonRecHitContainer therecHits;
00065         RPCSeedFinder *theSeed;
00066 };
00067 
00068 #endif