File indexing completed on 2023-03-17 10:59:51
0001 #ifndef HcalLaserEventFilter2012_h
0002 #define HcalLaserEventFilter2012_h
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023 #include <iostream>
0024 #include <sstream>
0025 #include <fstream>
0026
0027
0028 #include "FWCore/Framework/interface/Frameworkfwd.h"
0029 #include "FWCore/Framework/interface/one/EDFilter.h"
0030 #include "FWCore/Framework/interface/Event.h"
0031
0032 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0033
0034
0035
0036
0037 class HcalLaserEventFiltProducer2012;
0038
0039 class HcalLaserEventFilter2012 : public edm::one::EDFilter<> {
0040 public:
0041 explicit HcalLaserEventFilter2012(const edm::ParameterSet&);
0042 ~HcalLaserEventFilter2012() override;
0043
0044 static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
0045
0046 friend HcalLaserEventFiltProducer2012;
0047
0048 private:
0049 bool filter(edm::Event&, const edm::EventSetup&) override;
0050 void endJob() override;
0051
0052 void readEventListFile(const std::string& eventFileName);
0053 void addEventString(const std::string& eventString);
0054
0055
0056 typedef std::vector<std::string> strVec;
0057 typedef std::vector<std::string>::iterator strVecI;
0058
0059
0060 std::vector<std::string> EventList_;
0061
0062 bool verbose_;
0063
0064 std::string prefix_;
0065
0066
0067
0068 int minrun_;
0069 int maxrun_;
0070 int minRunInFile, maxRunInFile;
0071
0072 bool WriteBadToFile_;
0073 bool forceFilterTrue_;
0074 std::ofstream outfile_;
0075 };
0076 #endif