CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_4/src/RecoLocalMuon/CSCRecHitD/src/CSCHitFromWireOnly.h

Go to the documentation of this file.
00001 #ifndef CSCRecHitD_CSCHitFromWireOnly_h
00002 #define CSCRecHitD_CSCHitFromWireOnly_h
00003 
00021 #include <RecoLocalMuon/CSCRecHitD/src/CSCWireHit.h>
00022 
00023 #include <DataFormats/CSCDigi/interface/CSCWireDigiCollection.h>
00024 
00025 #include <RecoLocalMuon/CSCRecHitD/src/CSCRecoConditions.h>
00026 
00027 #include <FWCore/Framework/interface/Frameworkfwd.h>
00028 #include <FWCore/ParameterSet/interface/ParameterSet.h>
00029 
00030 #include <vector>
00031 
00032 class CSCLayer;
00033 class CSCLayerGeometry;
00034 class CSCDetId;
00035 
00036 
00037 class CSCHitFromWireOnly 
00038 {
00039  public:
00040 
00041   typedef std::vector<int> ChannelContainer;
00042 
00043   
00044   explicit CSCHitFromWireOnly( const edm::ParameterSet& ps );
00045   
00046   ~CSCHitFromWireOnly();
00047   
00048   std::vector<CSCWireHit> runWire( const CSCDetId& id, const CSCLayer* layer, const CSCWireDigiCollection::Range& rwired ); 
00049   void setConditions( const CSCRecoConditions* reco ) {
00050     recoConditions_ = reco;
00051   }
00052   void makeWireCluster(const CSCWireDigi& digi);
00053   bool addToCluster(const CSCWireDigi& digi); 
00054   float findWireHitPosition();
00055   
00056   CSCDetId id_;    
00057   const CSCLayer * layer_;
00058   const CSCLayerGeometry * layergeom_;
00059   
00060  private:
00061   bool isDeadWG(const CSCDetId& id, int WG); 
00062 
00063   std::vector<CSCWireDigi> wire_cluster;
00064   std::vector<int> wire_in_cluster;
00065   std::vector<float> wire_spacing;
00066   int theTime;
00067   int theLastChannel;
00068   std::vector<int> wire_in_clusterAndBX; 
00069   
00070   int deltaT;
00071   //int clusterSize;
00072 
00074   const CSCRecoConditions* recoConditions_;
00075 };
00076 
00077 #endif
00078 
00079