ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/GPetrucc/plugins/TotalEventCounter.cc
Revision: 1.1
Committed: Wed Feb 24 11:50:13 2010 UTC (15 years, 2 months ago) by gpetrucc
Content type: text/plain
Branch: MAIN
CVS Tags: V03-00-00, HEAD
Log Message:
Improvements and some new stuff

File Contents

# User Rev Content
1 gpetrucc 1.1 #include "FWCore/Framework/interface/Frameworkfwd.h"
2     #include "FWCore/Framework/interface/EDAnalyzer.h"
3    
4     #include "FWCore/Framework/interface/MakerMacros.h"
5    
6     #include "FWCore/ParameterSet/interface/ParameterSet.h"
7    
8     #include "DataFormats/Common/interface/MergeableCounter.h"
9    
10     #include "FWCore/MessageLogger/interface/MessageLogger.h"
11    
12     class TotalEventCounter : public edm::EDAnalyzer {
13     public:
14     explicit TotalEventCounter(const edm::ParameterSet&);
15     ~TotalEventCounter();
16    
17     protected:
18     virtual void analyze(const edm::Event &, const edm::EventSetup&);
19     virtual void beginLuminosityBlock(const edm::LuminosityBlock &, const edm::EventSetup&);
20     virtual void endJob() ;
21    
22     edm::InputTag src_;
23     uint64_t events_;
24     };
25    
26     TotalEventCounter::TotalEventCounter(const edm::ParameterSet & iConfig) :
27     src_(iConfig.getParameter<edm::InputTag>("src")),
28     events_(0)
29     {
30     }
31    
32     TotalEventCounter::~TotalEventCounter()
33     {
34     }
35    
36     void
37     TotalEventCounter::analyze(const edm::Event & iEvent, const edm::EventSetup & iSetup)
38     {
39     }
40    
41     void
42     TotalEventCounter::beginLuminosityBlock(const edm::LuminosityBlock & iLumi, const edm::EventSetup & iSetup)
43     {
44     edm::Handle<edm::MergeableCounter> mc;
45     iLumi.getByLabel(src_, mc);
46     //std::cout << "Found " << mc->value << " events in run " << iLumi.run() << ", lumi " << iLumi.luminosityBlock() << std::endl;
47     events_ += mc->value;
48     }
49    
50     void
51     TotalEventCounter::endJob()
52     {
53     edm::LogSystem("EventCount") << "Found " << events_ << " events in total.\n";
54     }
55    
56     DEFINE_FWK_MODULE(TotalEventCounter);