All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
KIT.h
Go to the documentation of this file.
1 #ifndef KIT_h
2 #define KIT_h 1
3 #include <iostream>
4 #ifdef MARLIN_USE_AIDA
5 #include <marlin/AIDAProcessor.h>
6 #include <AIDA/IHistogramFactory.h>
7 #include <AIDA/ICloud1D.h>
8 #endif
9 #include "marlin/Processor.h"
10 #include "lcio.h"
11 #include <string>
12 #include <stdio.h>
13 #include <vector>
14 #include <map>
15 #include <set>
16 #include <stack>
17 #include <sstream>
18 #include <bitset>
19 #include <queue>
20 #include <utility>
21 #include <algorithm>
22 #include <EVENT/LCCollection.h>
23 #include <EVENT/MCParticle.h>
24 #include <EVENT/ReconstructedParticle.h>
25 #include <EVENT/Cluster.h>
26 #include <IMPL/MCParticleImpl.h>
27 #include <IMPL/ClusterImpl.h>
28 #include <IMPL/LCCollectionVec.h>
29 #include <EVENT/SimCalorimeterHit.h>
30 #include <EVENT/CalorimeterHit.h>
31 #include <UTIL/LCTOOLS.h>
32 #include <iomanip>
33 #include "math.h"
34 #include "KITutil.h"
35 #include "Phys_Geom_Database.h"
36 
37 using namespace lcio ;
38 using namespace marlin ;
39 using namespace std;
40 using namespace IMPL;
41 using namespace EVENT;
42 
43 
44 
45 /**
46 \addtogroup Clustering Clustering
47 @{
48 
49 \addtogroup KIT KIT
50 @{
51 Example processor for marlin.
52  * If compiled with MARLIN_USE_AIDA
53  * it creates a histogram (cloud) of the MCParticle energies.
54  */
55 class KIT : public Processor {
56 
57  public:
58 
59  virtual Processor* newProcessor() { return new KIT ; }
60 
61 
62  KIT() ;
63 
64  /** Called at the begin of the job before anything is read.
65  * Use to initialize the processor, e.g. book histograms.
66  */
67  virtual void init() ;
68 
69  /** Called for every run.
70  */
71  virtual void processRunHeader( LCRunHeader* run ) ;
72 
73  /** Called for every event - the working horse.
74  */
75  virtual void processEvent( LCEvent * evt ) ;
76 
77 
78  virtual void check( LCEvent * evt ) ;
79 
80 
81  /** Called after data processing for clean up.
82  */
83  virtual void end();
84 
85  protected:
86 
87  int _options{};
88  int _nRun{};
89  int _nEvt{};
90 
91  std::string _Ecal_col{};
92  std::string _CoreCollection{};
93 
94  string _ToClean{};
95  int _CleanCut{};
96 
97  int _N{};
98  vector<float> _miipstep{};
99 
100  int _MinHit0{};
101  int _MinHitSplit{};
102  double _Rcut{};
103  double _Distcut{};
104  double _Coscut{};
105 } ;
106 
107 /** @} @} */
108 
109 #endif
Definition: KIT.h:55
virtual Processor * newProcessor()
Definition: KIT.h:59