CMS 3D CMS Logo

TestPSetAnalyzer.cc
Go to the documentation of this file.
1 // Test reading of values from the config file into
2 // an analyzer. Especially useful for some of the more
3 // complex data types
4 
5 //
6 // Original Author: Eric Vaandering
7 // Created: Mon Dec 22 13:43:10 CST 2008
8 //
9 //
10 
11 // user include files
17 
18 // system include files
19 #include <iostream>
20 #include <memory>
21 
22 //
23 // class decleration
24 //
25 
27 public:
28  explicit TestPSetAnalyzer(edm::ParameterSet const&);
29 
30 private:
31  void analyze(edm::StreamID, edm::Event const&, edm::EventSetup const&) const final;
32 
36 
37  std::vector<edm::LuminosityBlockID> testVLumi_;
38  std::vector<edm::LuminosityBlockRange> testVLRange_;
39  std::vector<edm::EventRange> testVERange_;
40 
45  std::vector<edm::EventID> testVEventID_;
51  std::vector<edm::EventRange> testVERange2_;
52 
53  // ----------member data ---------------------------
54 };
55 
56 //
57 // constants, enums and typedefs
58 //
59 
60 //
61 // static data member definitions
62 //
63 
64 //
65 // constructors and destructor
66 //
68  testLumi_ = iConfig.getParameter<edm::LuminosityBlockID>("testLumi");
69  testVLumi_ = iConfig.getParameter<std::vector<edm::LuminosityBlockID> >("testVLumi");
70  testLRange_ = iConfig.getParameter<edm::LuminosityBlockRange>("testRange");
71  testVLRange_ = iConfig.getParameter<std::vector<edm::LuminosityBlockRange> >("testVRange");
72  testERange_ = iConfig.getParameter<edm::EventRange>("testERange");
73  testVERange_ = iConfig.getParameter<std::vector<edm::EventRange> >("testVERange");
74 
75  testEventID1_ = iConfig.getParameter<edm::EventID>("testEventID1");
76  testEventID2_ = iConfig.getParameter<edm::EventID>("testEventID2");
77  testEventID3_ = iConfig.getParameter<edm::EventID>("testEventID3");
78  testEventID4_ = iConfig.getParameter<edm::EventID>("testEventID4");
79  testVEventID_ = iConfig.getParameter<std::vector<edm::EventID> >("testVEventID");
80  testERange1_ = iConfig.getParameter<edm::EventRange>("testERange1");
81  testERange2_ = iConfig.getParameter<edm::EventRange>("testERange2");
82  testERange3_ = iConfig.getParameter<edm::EventRange>("testERange3");
83  testERange4_ = iConfig.getParameter<edm::EventRange>("testERange4");
84  testERange5_ = iConfig.getParameter<edm::EventRange>("testERange5");
85  testVERange2_ = iConfig.getParameter<std::vector<edm::EventRange> >("testVERange2");
86 
87  std::cout << "Lumi PSet test " << testLumi_ << std::endl;
88  std::cout << "LRange PSet test " << testLRange_ << std::endl;
89  std::cout << "ERange PSet test " << testERange_ << std::endl;
90 
91  for (auto const& i : testVLumi_) {
92  std::cout << "VLumi PSet test " << i << std::endl;
93  }
94 
95  for (auto const& i : testVLRange_) {
96  std::cout << "VLRange PSet test " << i << std::endl;
97  }
98 
99  for (auto const& i : testVERange_) {
100  std::cout << "VERange PSet test " << i << std::endl;
101  }
102 
103  std::cout << "EventID1 PSet test " << testEventID1_ << std::endl;
104  std::cout << "EventID2 PSet test " << testEventID2_ << std::endl;
105  std::cout << "EventID3 PSet test " << testEventID3_ << std::endl;
106  std::cout << "EventID4 PSet test " << testEventID4_ << std::endl;
107  std::cout << "ERange1 PSet test " << testERange1_ << std::endl;
108  std::cout << "ERange2 PSet test " << testERange2_ << std::endl;
109  std::cout << "ERange3 PSet test " << testERange3_ << std::endl;
110  std::cout << "ERange4 PSet test " << testERange4_ << std::endl;
111  std::cout << "ERange5 PSet test " << testERange5_ << std::endl;
112 
113  for (auto const& i : testVEventID_) {
114  std::cout << "VEventID PSet test " << i << std::endl;
115  }
116 
117  for (auto const& i : testVERange2_) {
118  std::cout << "VERange2 PSet test " << i << std::endl;
119  }
120 }
121 
122 //
123 // member functions
124 //
125 
126 // ------------ method called to for each event ------------
128 
129 //define this as a plug-in
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
edm::EventID testEventID3_
edm::EventID testEventID2_
edm::EventRange testERange5_
edm::EventRange testERange3_
std::vector< edm::EventRange > testVERange_
std::vector< edm::EventRange > testVERange2_
std::vector< edm::LuminosityBlockRange > testVLRange_
edm::EventRange testERange4_
edm::EventRange testERange2_
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:16
edm::LuminosityBlockID testLumi_
std::vector< edm::EventID > testVEventID_
std::vector< edm::LuminosityBlockID > testVLumi_
edm::EventID testEventID1_
edm::LuminosityBlockRange testLRange_
edm::EventRange testERange_
TestPSetAnalyzer(edm::ParameterSet const &)
void analyze(edm::StreamID, edm::Event const &, edm::EventSetup const &) const final
edm::EventID testEventID4_
edm::EventRange testERange1_