Belle II Software  release-08-01-10
CDCCosmicAnalysisModule.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 
9 #pragma once
10 
11 #include <framework/core/Module.h>
12 #include <string>
13 
14 #include <framework/datastore/StoreArray.h>
15 #include <framework/datastore/StoreObjPtr.h>
16 #include <framework/dataobjects/EventMetaData.h>
17 #include <framework/dataobjects/EventT0.h>
18 #include <mdst/dataobjects/Track.h>
19 #include <mdst/dataobjects/TrackFitResult.h>
20 #include <tracking/dataobjects/RecoTrack.h>
21 #include "TTree.h"
22 #include "TFile.h"
23 #include "TVector3.h"
24 
25 namespace Belle2 {
31  namespace CDC {
32 
33 
34 
35 
41 
42  public:
47 
51  virtual ~CDCCosmicAnalysisModule();
52 
53 
57  void initialize() override;
58 
62  void beginRun() override;
66  void event() override;
70  void endRun() override;
74  void terminate() override;
75 
76  private:
82  std::string m_trackArrayName;
83  std::string m_recoTrackArrayName ;
86  std::string m_outputFileName;
87  std::string m_treeName;
90  TFile* tfile;
91  TTree* tree;
92  int run;
93  double ndf1;
94  double ndf2;
95  double Pval1;
96  double Pval2;
97  double D01;
98  double D02;
99  double Phi01;
100  double Phi02;
101  // double Om1; /**< Omega of 1st track. */
102  // double Om2; /**< Omega of 2nd track. */
103  double Z01;
104  double Z02;
105  double tanLambda1;
106  double tanLambda2;
107  double eD01;
108  double eD02;
109  double eOm1;
110  double eOm2;
111  double ePhi01;
112  double ePhi02;
113  double eZ01;
114  double eZ02;
115  double etanL1;
116  double etanL2;
117  double Pt1;
118  double Pt2;
120  TVector3 posSeed1;
121  TVector3 posSeed2;
123  TVector3 Mom1;
124  TVector3 Mom2;
125  double Omega1;
126  double Omega2;
127  double evtT0;
128  short charge;
130  bool m_bField;
132  bool m_phi0InRad;
134  };
135  }
137 }
138 
Analysis module for CDC CR data.
StoreObjPtr< EventT0 > m_eventTimeStoreObject
Event t0.
std::string m_recoTrackArrayName
Belle2::RecoTrack StoreArray nam.e.
double eZ01
error on Z0 of 1st track.
void initialize() override
Initializes the Module.
StoreArray< TrackFitResult > m_TrackFitResults
Track fit results.
void event() override
Event action (main routine).
double eD01
error on D0 of 1st track.
double ndf1
degree of freedom of 1st track.
void terminate() override
Termination action.
bool m_phi0InRad
Unit of phi0, true: radian, false: degree.
double ndf2
degree of freedom of 2nd track.
double eD02
error on D0 of 2nd track.
std::string m_relRecoTrackTrackName
Releation between RecoTrack and Belle2:Track.
TVector3 posSeed1
seed position of the first track.
double etanL1
error on TanLambda of 1st track.
bool m_eventT0Extraction
run with event t0 extraction
void beginRun() override
Begin run action.
double eOm1
error on Omega of 1st track.
bool m_bField
Data are taken with B-field or not, if true, NDF=5 in cal P-value.
double eOm2
error on Omega of 2nd track.
double etanL2
error on TanLambda of 2nd track.
std::string m_trackArrayName
Belle2::Track StoreArray name.
TVector3 posSeed2
seed position of the second track.
double eZ02
error on Z0 of 2nd track.
TTree * tree
output tree, save info of each hit.
std::string m_trackFitResultArrayName
Belle2::TrackFitResult StoreArray name.
double tanLambda2
Tanlambda of 2nd track.
double ePhi02
error on Phi0 of 2nd track.
std::string m_treeName
output tree name.
StoreArray< RecoTrack > m_RecoTracks
Tracks.
double ePhi01
error on Phi0 of 1st track.
StoreObjPtr< EventMetaData > m_EventMetaData
Event metadata.
double tanLambda1
TanLambda of 1st track.
std::string m_outputFileName
Output file name.
bool m_storeTrackParErrors
Store error of track parameters or not.
Base class for Modules.
Definition: Module.h:72
Accessor to arrays stored in the data store.
Definition: StoreArray.h:113
Type-safe access to single objects in the data store.
Definition: StoreObjPtr.h:96
Abstract base class for different kinds of events.