CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
L1TLSBlock.h
Go to the documentation of this file.
1 #ifndef DQMOffline_L1Trigger_L1TLSBlock_h
2 #define DQMOffline_L1Trigger_L1TLSBlock_h
3 
29 // System include files
30 //#include <memory>
31 //#include <unistd.h>
32 
33 // User include files
34 //#include "FWCore/Framework/interface/Frameworkfwd.h"
35 //#include "FWCore/Framework/interface/EDAnalyzer.h"
36 //#include "FWCore/Framework/interface/ESHandle.h"
37 //#include "FWCore/Framework/interface/Event.h"
38 //#include "FWCore/Framework/interface/LuminosityBlock.h"
39 //#include "FWCore/Framework/interface/MakerMacros.h"
40 //
41 //#include "FWCore/ParameterSet/interface/ParameterSet.h"
42 //
43 //#include "DQMServices/Core/interface/DQMStore.h"
44 //#include "DQMServices/Core/interface/MonitorElement.h"
45 //#include "FWCore/ServiceRegistry/interface/Service.h"
46 //#include "FWCore/MessageLogger/interface/MessageLogger.h"
47 //
48 //#include "DQM/L1TMonitor/interface/L1TOMDSHelper.h"
49 //
50 //#include <TString.h>
51 
52 #include <iostream>
53 #include <fstream>
54 #include <string>
55 #include <vector>
56 #include <algorithm>
57 
58 // Forward declarations
59 
60 
61 
62 // Helper
63 template<class T1, class T2, class Pred = std::less<T1> >
65  bool operator()(const std::pair<T1,T2>&left, const std::pair<T1,T2>&right) {
66  Pred p;
67  return p(left.first, right.first);
68  }
69 };
70 
71 // Class declaration
72 class L1TLSBlock {
73 
74  public:
75  // typedefs
76  typedef std::vector<std::pair<int,double> > LumiTestDoubleList;
77  typedef std::vector<std::pair<int,double> > LumiTestIntList;
78  typedef std::pair<int,int> LumiRange;
79  typedef std::vector<LumiRange> LumiRangeList;
80 
82  public:
83  // Constructor
84  L1TLSBlock();
85  // Destructor
86  virtual ~L1TLSBlock();
89 
90  // Private Methods
91  private:
92  void initializeIO(bool);
93  void blockByStatistics();
94  void orderTestDoubleList();
95  void orderTestIntList();
96 
98 
99  // Variables
100  private:
104  double thresholdD_;
106 
107 };
108 
109 #endif
LumiRangeList outputList_
Definition: L1TLSBlock.h:103
void blockByStatistics()
Definition: L1TLSBlock.cc:150
void orderTestIntList()
Definition: L1TLSBlock.cc:143
std::vector< LumiRange > LumiRangeList
Definition: L1TLSBlock.h:79
virtual ~L1TLSBlock()
Definition: L1TLSBlock.cc:72
std::pair< int, int > LumiRange
Definition: L1TLSBlock.h:78
LumiRangeList doBlocking(const LumiTestDoubleList &, double, BLOCKBY)
Definition: L1TLSBlock.cc:77
LumiTestIntList inputIntList_
Definition: L1TLSBlock.h:101
std::vector< std::pair< int, double > > LumiTestDoubleList
Definition: L1TLSBlock.h:76
int thresholdI_
Definition: L1TLSBlock.h:105
bool operator()(const std::pair< T1, T2 > &left, const std::pair< T1, T2 > &right)
Definition: L1TLSBlock.h:65
double computeErrorFromRange(LumiRange &)
Definition: L1TLSBlock.cc:171
LumiTestDoubleList inputDoubleList_
Definition: L1TLSBlock.h:102
double thresholdD_
Definition: L1TLSBlock.h:104
std::vector< std::pair< int, double > > LumiTestIntList
Definition: L1TLSBlock.h:77
void orderTestDoubleList()
Definition: L1TLSBlock.cc:135
void initializeIO(bool)
Definition: L1TLSBlock.cc:124