CMS 3D CMS Logo

CTPPSRPAlignmentInfoReader.cc
Go to the documentation of this file.
1 // system include files
2 #include <memory>
3 #include <iostream>
11 
16 
17 using namespace std;
18 
20 public:
23 
25  : iov_(iConfig.getParameter<unsigned long long>("iov")), record_(iConfig.getParameter<string>("record")) {}
26  explicit CTPPSRPAlignmentInfoReader(int i) {}
28  void analyze(const edm::Event& e, const edm::EventSetup& c) override;
29  void printInfo(const CTPPSRPAlignmentCorrectionsData& alignments, const edm::Event& event);
30 };
31 
33  using namespace edm;
34 
35  //this part gets the handle of the event source and the record (i.e. the Database)
36  if (e.id().run() == iov_) {
38  if (strcmp(record_.c_str(), "CTPPSRPAlignmentCorrectionsDataRcd") == 0) {
39  context.get<CTPPSRPAlignmentCorrectionsDataRcd>().get(alignments);
40  } else if (strcmp(record_.c_str(), "RPRealAlignmentRecord") == 0) {
41  context.get<RPRealAlignmentRecord>().get(alignments);
42  } else {
43  context.get<RPMisalignedAlignmentRecord>().get(alignments);
44  }
45 
46  //std::cout
47  edm::LogPrint("CTPPSRPAlignmentInfoReader")
48  << "New alignments found in run=" << e.id().run() << ", event=" << e.id().event() << ":\n"
49  << *alignments;
50  }
51 }
52 
RunNumber_t run() const
Definition: EventID.h:38
EventNumber_t event() const
Definition: EventID.h:40
void analyze(const edm::Event &e, const edm::EventSetup &c) override
example_stream void analyze(const edm::Event &, const edm::EventSetup &) override
CTPPSRPAlignmentInfoReader(edm::ParameterSet const &iConfig)
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:16
unsigned long long Time_t
Definition: Time.h:14
Container for CTPPS RP alignment corrections. The corrections are stored on two levels - RP and senso...
edm::EventID id() const
Definition: EventBase.h:59
HLT enums.
T get() const
Definition: EventSetup.h:73
def printInfo(self, event)
Definition: event.py:1