00001 #ifndef RecoLocalMuon_DTTTrigSyncFromDB_H 00002 #define RecoLocalMuon_DTTTrigSyncFromDB_H 00003 00033 #include "CalibMuon/DTDigiSync/interface/DTTTrigBaseSync.h" 00034 00035 00036 00037 class DTLayer; 00038 class DTWireId; 00039 class DTT0; 00040 class DTTtrig; 00041 00042 00043 namespace edm { 00044 class ParameterSet; 00045 } 00046 00047 class DTTTrigSyncFromDB : public DTTTrigBaseSync { 00048 public: 00050 DTTTrigSyncFromDB(const edm::ParameterSet& config); 00051 00053 virtual ~DTTTrigSyncFromDB(); 00054 00055 // Operations 00056 00058 virtual void setES(const edm::EventSetup& setup); 00059 00060 00065 virtual double offset(const DTLayer* layer, 00066 const DTWireId& wireId, 00067 const GlobalPoint& globPos, 00068 double& tTrig, 00069 double& wirePropCorr, 00070 double& tofCorr); 00071 00074 double offset(const DTWireId& wireId); 00075 00076 private: 00077 00078 const DTT0 *tZeroMap; 00079 const DTTtrig *tTrigMap; 00080 // Set the verbosity level 00081 static bool debug; 00082 // The velocity of signal propagation along the wire (cm/ns) 00083 double theVPropWire; 00084 // The ttrig is defined as mean + kFactor * sigma 00085 double kFactor; 00086 // Switch on/off the T0 correction from pulses 00087 bool doT0Correction; 00088 // Switch on/off the TOF correction for particles from IP 00089 bool doTOFCorrection; 00090 int theTOFCorrType; 00091 // Switch on/off the correction for the signal propagation along the wire 00092 bool doWirePropCorrection; 00093 int theWirePropCorrType; 00094 }; 00095 #endif 00096