Belle II Software prerelease-10-00-00a
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
44
45 public:
50
55
56
60 void initialize() override;
61
65 void beginRun() override;
69 void event() override;
73 void endRun() override;
77 void terminate() override;
78
79 private:
85 std::string m_trackArrayName;
86 std::string m_recoTrackArrayName ;
89 std::string m_outputFileName;
90 std::string m_treeName;
91
92
93 TFile* tfile;
94 TTree* tree;
95 int run;
96 double ndf1;
97 double ndf2;
98 double Pval1;
99 double Pval2;
100 double D01;
101 double D02;
102 double Phi01;
103 double Phi02;
104 // double Om1; /**< Omega of 1st track. */
105 // double Om2; /**< Omega of 2nd track. */
106 double Z01;
107 double Z02;
108 double tanLambda1;
109 double tanLambda2;
110 double eD01;
111 double eD02;
112 double eOm1;
113 double eOm2;
114 double ePhi01;
115 double ePhi02;
116 double eZ01;
117 double eZ02;
118 double etanL1;
119 double etanL2;
120 double Pt1;
121 double Pt2;
122
123 TVector3 posSeed1;
124 TVector3 posSeed2;
125
126 TVector3 Mom1;
127 TVector3 Mom2;
128 double Omega1;
129 double Omega2;
130 double evtT0;
131 short charge;
132
133 bool m_bField;
137 };
138 }
140}
141
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.