CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_10/src/RecoLocalMuon/CSCRecHitD/src/CSCRecHitDBuilder.h

Go to the documentation of this file.
00001 #ifndef CSCRecHitD_CSCRecHitDBuilder_h 
00002 #define CSCRecHitD_CSCRecHitDBuilder_h 
00003 
00004 
00025 #include <DataFormats/CSCRecHit/interface/CSCRecHit2DCollection.h>
00026 #include <DataFormats/CSCDigi/interface/CSCStripDigiCollection.h>
00027 #include <DataFormats/CSCDigi/interface/CSCWireDigiCollection.h>
00028 
00029 #include <FWCore/ParameterSet/interface/ParameterSet.h>
00030 
00031 class CSCLayer;
00032 class CSCGeometry;
00033 class CSCDetId;
00034 class CSCHitFromStripOnly;
00035 class CSCHitFromWireOnly;
00036 class CSCMake2DRecHit;
00037 class CSCRecoConditions;
00038 
00039 class CSCRecHitDBuilder
00040 {
00041  public:
00042   
00047   explicit CSCRecHitDBuilder( const edm::ParameterSet& ps);
00048   
00049   ~CSCRecHitDBuilder();
00050   
00059   void build( const CSCStripDigiCollection* stripds, const CSCWireDigiCollection* wireds,
00060               CSCRecHit2DCollection& oc );
00061   
00065   void setGeometry   ( const CSCGeometry* geom ) {geom_ = geom;}
00066 
00070   void setConditions ( const CSCRecoConditions* reco );
00071 
00072   const CSCLayer* getLayer( const CSCDetId& detId );
00073 
00074 
00075  private:
00076 
00077   bool useCalib;
00078   int stripWireDeltaT;
00079   bool makePseudo2DHits;
00080 
00086   CSCHitFromStripOnly*   hitsFromStripOnly_;
00087   CSCHitFromWireOnly*    hitsFromWireOnly_;
00088 
00089   CSCMake2DRecHit*       make2DHits_;
00090 
00091   /*
00092    * Cache geometry for current event
00093    */
00094   const CSCGeometry* geom_;
00095 };
00096 
00097 #endif