CMS 3D CMS Logo

CSCTFPtLUT.h

Go to the documentation of this file.
00001 #ifndef CSCTrackFinder_CSCTFPtLUT_h
00002 #define CSCTrackFinder_CSCTFPtLUT_h
00003 
00004 #include <FWCore/ParameterSet/interface/ParameterSet.h>
00005 #include <L1Trigger/CSCTrackFinder/interface/CSCTrackFinderDataTypes.h>
00006 #include <CondFormats/L1TObjects/interface/L1MuTriggerScales.h>
00007 #include <CondFormats/L1TObjects/interface/L1MuTriggerPtScale.h>
00008 #include <L1Trigger/CSCTrackFinder/interface/CSCTFPtMethods.h>
00009 #include <FWCore/ParameterSet/interface/FileInPath.h>
00011 #include <FWCore/Framework/interface/EventSetup.h>
00013 
00014 class CSCTFPtLUT
00015 {
00016 public:
00018   CSCTFPtLUT(const edm::EventSetup& c);
00020 
00021     CSCTFPtLUT(const edm::ParameterSet&,
00022                const L1MuTriggerScales* scales,
00023                const L1MuTriggerPtScale* ptScale);
00024   CSCTFPtLUT(const CSCTFPtLUT&);
00025   ~CSCTFPtLUT() { if(pt_lut) delete pt_lut; pt_lut = NULL; }
00026 
00027   CSCTFPtLUT& operator=(const CSCTFPtLUT&);
00028 
00029   ptdat Pt(const ptadd&) const;
00030 
00031   ptdat Pt(const unsigned&) const;
00032 
00033   ptdat Pt(const unsigned& delta_phi_12, const unsigned& delta_phi23,
00034            const unsigned& track_eta, const unsigned& track_mode,
00035            const unsigned& track_fr, const unsigned& delta_phi_sign) const;
00036 
00037   ptdat Pt(const unsigned& delta_phi_12, const unsigned& track_eta,
00038            const unsigned& track_mode, const unsigned& track_fr,
00039            const unsigned& delta_phi_sign) const;
00040 
00041  private:
00042   static ptdat* pt_lut;
00043   static bool lut_read_in;
00044   const L1MuTriggerScales* trigger_scale;
00045   const L1MuTriggerPtScale* trigger_ptscale;
00046   CSCTFPtMethods ptMethods;
00047 
00048   bool read_pt_lut, isBinary;
00049   edm::FileInPath pt_lut_file;
00050   unsigned pt_method, lowQualityFlag;
00051 
00052 
00053   ptdat calcPt(const ptadd&) const;
00054   unsigned trackQuality(const unsigned& eta, const unsigned& mode) const;
00055   void readLUT();
00056 };
00057 
00058 #endif

Generated on Tue Jun 9 17:39:41 2009 for CMSSW by  doxygen 1.5.4