CMS 3D CMS Logo

DQMEDAnalyzer.cc
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: __subsys__/__pkgname__
4 // Class: __class__
5 //
13 //
14 // Original Author: __author__
15 // Created: __date__
16 //
17 //
18 
19 #include <string>
20 
21 // user include files
23 @example_stream#include "DQMServices/Core/interface/DQMEDAnalyzer.h"
24 @example_global#include "DQMServices/Core/interface/DQMGlobalEDAnalyzer.h"
25 
28 
30 
31 @example_stream#include "DQMServices/Core/interface/MonitorElement.h"
32 
33 //
34 // class declaration
35 //
36 
37 @example_globalstruct Histograms___class__ {
40 
41 @example_streamclass __class__ : public DQMEDAnalyzer {
42 @example_globalclass __class__ : public DQMGlobalEDAnalyzer<Histograms___class__> {
43  public:
44  explicit __class__(const edm::ParameterSet&);
45  ~__class__();
46 
47  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
48 
49 
50  private:
51 @example_stream virtual void bookHistograms(DQMStore::IBooker &,
52 @example_stream edm::Run const&,
53 @example_stream edm::EventSetup const&) override;
55 @example_global edm::Run const&,
57 @example_global Histograms___class__&) const override;
58 
59 @example_stream virtual void analyze(const edm::Event&, const edm::EventSetup&) override;
60 @example_global virtual void dqmAnalyze(edm::Event const&,
62 @example_global Histograms___class__ const&) const override;
63 
64  // ----------member data ---------------------------
66 @example_stream MonitorElement * example_;
67 };
68 
69 //
70 // constants, enums and typedefs
71 //
72 
73 //
74 // static data member definitions
75 //
76 
77 //
78 // constructors and destructor
79 //
81  : folder_(iConfig.getUntrackedParameter<std::string>("folder"))
82 {
83  //now do what ever initialization is needed
84 }
85 
86 
88 {
89  // do anything here that needs to be done at desctruction time
90  // (e.g. close files, deallocate resources etc.)
91 }
92 
93 
94 //
95 // member functions
96 //
97 
98 // ------------ method called for each event ------------
99 @example_streamvoid
101 @example_stream{
102 @example_stream using namespace edm;
103 @example_stream}
104 @example_stream
105 @example_streamvoid
107 @example_stream edm::Run const& run,
108 @example_stream edm::EventSetup const & iSetup)
109 @example_stream{
110 @example_stream ibook.setCurrentFolder(folder_);
111 @example_stream
112 @example_stream ibook.book1D("EXAMPLE", "EXAMPLE", 10, 0., 10.);
113 @example_stream}
114 
115 @example_globalvoid
121 
122 @example_globalvoid
124 @example_global edm::Run const & run,
125 @example_global edm::EventSetup const & iSetup,
126 @example_global Histograms___class__ & histos) const
129 @example_global histos.histo_ = ibook.book1D("EXAMPLE", "EXAMPLE", 10, 0., 10.);
131 
132 // ------------ method fills 'descriptions' with the allowed parameters for the module ------------
133 void
135  //The following says we do not know what parameters are allowed so do no validation
136  // Please change this to state exactly what you do use, even if it is no parameters
138  desc.add<std::string>("folder", "MY_FOLDER");
139  descriptions.add("__class_lowercase__", desc);
140 }
141 
142 //define this as a plug-in
std::string folder_
example_streamclass __class__
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:17
example_stream example_global example_stream example_globalstruct Histograms___class__
~__class__()
virtual example_stream void bookHistograms(DQMStore::IBooker &,@example_stream edm::Run const &,@example_stream edm::EventSetup const &) override
__class__()
Definition: Skeleton.cc:30
virtual example_global void dqmAnalyze(edm::Event const &,@example_global edm::EventSetup const &,@example_global Histograms___class__ const &) const override
int iEvent
Definition: GenABIO.cc:230
void setCurrentFolder(std::string const &fullpath)
Definition: DQMStore.cc:268
example_global
MonitorElement * book1D(Args &&...args)
Definition: DQMStore.h:106
example_stream MonitorElement * example_
ConcurrentMonitorElement book1D(Args &&...args)
Definition: DQMStore.h:160
ParameterDescriptionBase * add(U const &iLabel, T const &value)
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
virtual ~__class__()
void add(std::string const &label, ParameterSetDescription const &psetDescription)
HLT enums.
bool include(const CollT &coll, const ItemT &item)
virtual example_stream void analyze(const edm::Event &, const edm::EventSetup &) override
Definition: Run.h:44