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
51 virtual ~CDCCosmicAnalysisModule() override;
52
53
57 void initialize() override;
58
62 void beginRun() override;
66 void event() override;
70 void terminate() override;
71
72 private:
78 std::string m_trackArrayName;
79 std::string m_recoTrackArrayName ;
82 std::string m_outputFileName;
83 std::string m_treeName;
84
85
86 TFile* tfile = nullptr;
87 TTree* tree = nullptr;
88 int run = 0;
89 double ndf1 = 0.0;
90 double ndf2 = 0.0;
91 double Pval1 = 0.0;
92 double Pval2 = 0.0;
93 double D01 = 0.0;
94 double D02 = 0.0;
95 double Phi01 = 0.0;
96 double Phi02 = 0.0;
97 // double Om1; /**< Omega of 1st track. */
98 // double Om2; /**< Omega of 2nd track. */
99 double Z01 = 0.0;
100 double Z02 = 0.0;
101 double tanLambda1 = 0.0;
102 double tanLambda2 = 0.0;
103 double eD01 = 0.0;
104 double eD02 = 0.0;
105 double eOm1 = 0.0;
106 double eOm2 = 0.0;
107 double ePhi01 = 0.0;
108 double ePhi02 = 0.0;
109 double eZ01 = 0.0;
110 double eZ02 = 0.0;
111 double etanL1 = 0.0;
112 double etanL2 = 0.0;
113 double Pt1 = 0.0;
114 double Pt2 = 0.0;
115
116 TVector3 posSeed1;
117 TVector3 posSeed2;
118
119 TVector3 Mom1;
120 TVector3 Mom2;
121 double Omega1 = 0.0;
122 double Omega2 = 0.0;
123 double evtT0 = 0.0;
124 short charge = 0;
125
126 bool m_bField = false;
128 bool m_phi0InRad = false;
130 };
131 }
133}
134
StoreObjPtr< EventT0 > m_eventTimeStoreObject
Event t0.
std::string m_recoTrackArrayName
Belle2::RecoTrack StoreArray name.e.
virtual ~CDCCosmicAnalysisModule() override
Destructor.
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.