MdPileUpCorrecter.h
Go to the documentation of this file.
1 #ifndef _MdPileUpCorrecterAG_MdPileUpCorrecter_h_
2 #define _MdPileUpCorrecterAG_MdPileUpCorrecter_h_
3 
4 #include <utl/config.h> // before all
5 
6 #include <fwk/VModule.h>
7 #include <mevt/MEvent.h>
8 #include <mevt/Module.h>
9 #include <evt/ShowerRecData.h>
10 
11 #include <utl/Trace-fwd.h>
12 #include <utl/MessageLoggerConfig.h>
13 #include <utl/UnitsConfig.h>
14 
15 #include <string>
16 #include <iostream>
17 #include <memory>
18 
19 #include <boost/utility.hpp>
20 namespace utl {
21  class TabularStream;
22 }
23 
24 namespace MdPileUpCorrecterAG {
25 
27  class VPileUpCorrecterFunctor;
28 
39  class MdPileUpCorrecter : public boost::noncopyable, public fwk::VModule {
40 
41  public:
43  enum Strategy {
44  eInhibit, //< Applies pile-up correction based on inhibit channels (see GAP Note 2022-001)
45  };
47  static const char* const kStrategyTags[];
48 
51  VModule::ResultFlag Init();
52  VModule::ResultFlag Run(evt::Event& e);
53  VModule::ResultFlag Finish();
54 
55  private:
61  void InitTable(std::unique_ptr<utl::TabularStream>& pt, unsigned int nCol) const;
62 
63 
66 
68  std::unique_ptr<VPileUpCorrecterFunctor> fCorrecter;
69 
72 
73  REGISTER_MODULE("MdPileUpCorrecter", MdPileUpCorrecter);
74 
75  };
76 
77 }
78 
79 
80 #endif
Strategy fStrategy
Counting stategy to be performed.
Helper class for configuration of units: value and name.
Definition: UnitsConfig.h:22
VModule::ResultFlag Run(evt::Event &e)
Run: invoked once per event.
VModule::ResultFlag Finish()
Finish: invoked at end of the run (NOT end of the event)
Strategy
Kind of possible counting criteria to be used.
std::unique_ptr< VPileUpCorrecterFunctor > fCorrecter
Object performing the pattern identification on individuals channels.
static const char *const kStrategyTags[]
Tags for the types of strategy.
Wraps a message to logger (received as parameter or created here), its access and configuration...
Module interface.
Definition: VModule.h:53
REGISTER_MODULE("MdPileUpCorrecter", MdPileUpCorrecter)
utl::MessageLoggerConfig fLog
Output messages handler.
void InitTable(std::unique_ptr< utl::TabularStream > &pt, unsigned int nCol) const
Helper to init a tabular stream.
VModule::ResultFlag Init()
Initialize: invoked at beginning of run (NOT beginning of event)
utl::UnitsConfig fUnits
Units configuration.
Perform pile-up correction.

, generated on Tue Sep 26 2023.