Belle II Software development
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
25namespace Belle2 {
30
31 namespace CDC {
32
33
34
35
39
41
42 public:
47
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;
88
89
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;
119
120 TVector3 posSeed1;
121 TVector3 posSeed2;
122
123 TVector3 Mom1;
124 TVector3 Mom2;
125 double Omega1;
126 double Omega2;
127 double evtT0;
128 short charge;
129
130 bool m_bField;
134 };
135 }
137}
138
StoreObjPtr< EventT0 > m_eventTimeStoreObject
Event t0.
std::string m_recoTrackArrayName
Belle2::RecoTrack StoreArray name.e.
void initialize() override
Initializes the Module.
StoreArray< TrackFitResult > m_TrackFitResults
Track fit results.
void event() override
Event action (main routine).
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.
std::string m_relRecoTrackTrackName
Relation 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.
TTree * tree
output tree, save info of each hit.
std::string m_trackFitResultArrayName
Belle2::TrackFitResult StoreArray name.
double ePhi02
error on Phi0 of 2nd track.
StoreArray< RecoTrack > m_RecoTracks
Tracks.
double ePhi01
error on Phi0 of 1st track.
StoreObjPtr< EventMetaData > m_EventMetaData
Event metadata.
std::string m_outputFileName
Output file name.
bool m_storeTrackParErrors
Store error of track parameters or not.
Module()
Constructor.
Definition Module.cc:30
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.