MarlinTPC  1.2.0
TrackerRawDataToDataConverterProcessor.h
1 #ifndef TRACKERRAWDATATODATACONVERTERPROCESSOR_H
2 #define TRACKERRAWDATATODATACONVERTERPROCESSOR_H
3 
4 // C++
5 #include <string>
6 
7 // LCIO
8 #include "lcio.h"
9 
10 // Marlin
11 #include "marlin/Processor.h"
12 
13 namespace marlintpc
14 {
15 
16  /* the following comment is tranfered to doxygen documentation
17  * which begins with a second asterix, or in case of on line comment an extra third slash
18  */
19 
40  class TrackerRawDataToDataConverterProcessor : public marlin::Processor
41  {
42  public:
43 
44  /* This method will be called by the marlin package
45  * It returns a processor of the current type (here TrackerRawDataToDataConverterProcessor)
46  */
47  Processor* newProcessor()
48  {
50  }
51 
52  /* the default constructor
53  * here the processor parameters are registered to the marlin package
54  * other initialisation should be placed in the init method
55  */
57 
58  /* Called at the begin of the job before anything is read.
59  * Use to initialize the processor, e.g. book histograms
60  */
61  void init();
62 
63  /* Called for every run.
64  * in this processor it is not used
65  */
66  void processRunHeader(lcio::LCRunHeader* run);
67 
68  /* Called for every event - the working horse.
69  * Here the real conversion take place
70  */
71  void processEvent(lcio::LCEvent* evt);
72 
73  /* This method is only called if the check flag is set (default) in the main processor
74  * (where the input files are given)
75  * It should be used to create check plots which are not needed in a complete analysis
76  * (where normaly the check flag is deactivated)
77  */
78  void check(lcio::LCEvent* evt);
79 
80 
81  /* Called after data processing for clean up.
82  * e.g. saving contol histograms, delete created objects
83  * (which are not stored in a collection/event), etc.
84  */
85  void end();
86 
87  protected:
88 
89  /* normally the doxygen documentation is placed before the method/variable
90  * but for one line comments in case of variables is may be more convenient to you
91  * to place it after the variable. In this case you use an arrow to tell doxygen
92  * to which variable the comment belongs to.
93  */
94 
95  std::string _inputColName; // the name of the input collection
96  std::string _outputColName; // the name of the output collection
97 
98 
101  int _setToZeroBeforeBin;
102  int _setToZeroAfterBin;
103  // temporary variables
104  bool _changeBinsBefore;
105  bool _changeBinsAfter;
106  };
107 } // class declaration
108 #endif
109 
110 
111 
raw data converting Processor of the MarlinTPC package .
Definition: TrackerRawDataToDataConverterProcessor.h:40
bool _outputIsPersistent
set the persistency flag of the output collection
Definition: TrackerRawDataToDataConverterProcessor.h:100