File indexing completed on 2024-04-06 12:26:10
0001 #ifndef DTMEANTIMER_H
0002 #define DTMEANTIMER_H
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018 class DTSuperLayer;
0019 class DTTTrigBaseSync;
0020 #include "DataFormats/Common/interface/Handle.h"
0021 namespace edm {
0022 class Event;
0023 class EventSetup;
0024 }
0025 #include "DataFormats/DTRecHit/interface/DTRecHitCollection.h"
0026
0027
0028 #include <map>
0029 #include <vector>
0030
0031
0032
0033
0034
0035 class DTMeanTimer {
0036 public:
0037
0038 DTMeanTimer(const DTSuperLayer* sl, edm::Handle<DTRecHitCollection>& hits, DTTTrigBaseSync* sync);
0039
0040
0041 DTMeanTimer(const DTSuperLayer* sl, std::vector<DTRecHit1D>& hits, DTTTrigBaseSync* sync);
0042
0043
0044 ~DTMeanTimer();
0045
0046
0047
0048
0049
0050 std::vector<double> run() const;
0051
0052 private:
0053 typedef std::map<int, double> hitColl;
0054
0055 std::vector<double> computeMT(hitColl hits1, hitColl hits2, hitColl hits3) const;
0056 double tMax(const double& t1, const double& t2, const double& t3) const;
0057
0058 private:
0059 int theNumWires;
0060
0061 hitColl hitsLay[4];
0062
0063 protected:
0064 };
0065 #endif