MarlinTPC  1.2.0
CutHitsOnTracksProcessor.h
1 #ifndef CutHitsOnTracksProcessor_h
2 #define CutHitsOnTracksProcessor_h 1
3 
4 //marlin
5 #include "marlin/Processor.h"
6 #include "marlin/Global.h"
7 //#include "lcio.h"
8 //#include <string>
9 //#include <vector>
10 //#include <EVENT/TrackerHit.h>
11 
12 // LCIO
13 #include "EVENT/LCIO.h"
14 #include "EVENT/LCCollection.h"
15 #include "EVENT/TrackerHit.h"
16 #include <IMPL/LCCollectionVec.h>
17 #include "IMPL/TrackImpl.h"
18 #include <IMPL/LCFlagImpl.h>
19 
20 // Aida
21 #ifdef MARLIN_USE_AIDA
22 #include <AIDA/AIDA.h>
23 #include <marlin/AIDAProcessor.h>
24 #endif
25 
26 //namespace AIDA {
27 // class IHistogram1D;
28 // class IHistogram2D;
29 //}
30 
31 
32 namespace marlintpc
33 {
34 
35 /* the following comment is tranfered to doxygen documentation
36  * which begins with a second asterix, or in case of on line comment an extra third slash
37  */
59 //@param SetOutputTransient If not 0 the output collection is set transient (default: 0)
60 
61 class CutHitsOnTracksProcessor : public marlin::Processor
62 {
63 
64  public:
65 
69 
70 
74 
75 
78  Processor * newProcessor();
79 
80 
83  void init();
84 
85 
88  void processRunHeader (lcio::LCRunHeader *run);
89 
90 
93  virtual void processEvent(lcio::LCEvent *evt);
94 
95 
99  virtual void check (lcio::LCEvent *evt);
100 
101 
107  virtual void end();
108 
109 private:
110 
113  std::string _input_track_candidates_collection_name;
114 
117  std::string _output_seed_tracks_collection_name;
118 
124 // int _outputIsTransient; //< if not 0 the hits collection is set transient
125  //(default 0)
126 
127  float _lowXCut;
128  float _lowYCut;
129  float _highXCut;
130  float _highYCut;
131 
132  int _minNrOfHitsOnTrack;
133 
134 };
135 
136 }// namespace marlintoc
137 
138 #endif // CutHitsOnTracksProcessor
139 
140 
141 
virtual void processEvent(lcio::LCEvent *evt)
Called for every event - the working horse.
Definition: CutHitsOnTracksProcessor.cc:80
~CutHitsOnTracksProcessor()
Destructor.
Definition: CutHitsOnTracksProcessor.cc:57
virtual void check(lcio::LCEvent *evt)
Called for every event - right after processEvent() has been called for all processors.
Definition: CutHitsOnTracksProcessor.cc:203
void processRunHeader(lcio::LCRunHeader *run)
Called once per run to process the event's header.
Definition: CutHitsOnTracksProcessor.cc:66
void init()
Called at the begin of the job before anything is read.
Definition: CutHitsOnTracksProcessor.cc:60
virtual void end()
Called after data processing for clean up in the inverse order of the init() method so that resources...
Definition: CutHitsOnTracksProcessor.cc:208
CutHitsOnTracksProcessor()
Default constructor.
Definition: CutHitsOnTracksProcessor.cc:12
Processor * newProcessor()
Return a new instance of this processor.
Definition: CutHitsOnTracksProcessor.cc:197
CutHitsOnTracksProcessor is a Cut application Processor to be applied on reconstructed hits of a trac...
Definition: CutHitsOnTracksProcessor.h:61