Belle II Software  release-06-00-14
SVDPerformanceTTreeModule.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 
13 #include <TTree.h>
14 #include <TFile.h>
15 
16 namespace Belle2 {
26 
27  public:
31  void initialize() override;
33  void terminate() override;
35  void event() override;
36 
37  private:
38 
39  std::string m_rootFileName = "";
40  TFile* m_rootFilePtr = nullptr;
42  std::string m_recoTracksStoreArrayName{"RecoTracks"};
44  TTree* m_t_U = nullptr;
45  TTree* m_t_V = nullptr;
46  /* Branches of SVD u and v clusters tree */
47  float m_svdClCharge = 0;
48  float m_svdClSNR = 0;
49  float m_svdClTime = 0;
50  float m_svdRes = 0;
51  float m_svdPitch = 0;
52  float m_svdWidth = 0;
53  float m_svdLength = 0;
54  float m_svdClIntStrPos = 0;
55  float m_svdClPos = 0;
56  float m_svdClPosErr = 0;
57  float m_svdTruePos = -99;
58  float m_svdClPhi = 0;
59  float m_svdClZ = 0;
60  std::vector<float> m_svdStripCharge;
61  std::vector<float> m_svdStrip6Samples;
62  std::vector<float> m_svdStripTime;
63  std::vector<float> m_svdStripPosition;
64  int m_svdTrkPXDHits = 0;
65  int m_svdTrkSVDHits = 0;
66  int m_svdTrkCDCHits = 0;
67  float m_svdTrkd0 = 0;
68  float m_svdTrkz0 = 0;
69  float m_svdTrkpT = 0;
70  float m_svdTrkpCM = 0;
72  float m_svdTrkPos = 0;
73  float m_svdTrkPosOS = 0;
74  float m_svdTrkPosErr = 0;
75  float m_svdTrkPosErrOS = 0;
76  float m_svdTrkQoP = 0;
77  float m_svdTrkPrime = 0;
78  float m_svdTrkPrimeOS = 0;
79  float m_svdTrkPosUnbiased = 0;
81  float m_svdTrkQoPUnbiased = 0;
83  unsigned int m_svdLayer = 0;
84  unsigned int m_svdLadder = 0;
85  unsigned int m_svdSensor = 0;
86  unsigned int m_svdSize = 0;
87  unsigned int m_svdTB = 0;
88  };
90 }
91 
Base class for Modules.
Definition: Module.h:72
The module is used to create a TTree to study SVD clusters, genfit unbiased residuals and many other ...
float m_svdTrkPrimeOS
tan of incident angle projected on v/u,w (other side)
float m_svdClIntStrPos
cluster interstrip position
float m_svdTrkPosErrOS
track position error on the other side
TTree * m_t_V
tree containing info related to the V side clusters
void initialize() override
Register input and output data.
std::vector< float > m_svdStripPosition
absolute position of the strips of the cluster
float m_svdClPosErr
cluster position error
int m_svdTrkCDCHits
number of CDC hits on the track
float m_svdTrkPrime
tan of incident angle projected on u/v,w
void event() override
Compute the variables and fill the tree.
int m_svdTrkPXDHits
number of PXD hits on the track
void terminate() override
Write the TTrees to the file.
std::vector< float > m_svdStripCharge
charge of the strips of the cluster
float m_svdTrkTraversedLength
traversed length of the track in the sensor
float m_svdTrkPosUnbiased
unbiased track position
std::vector< float > m_svdStrip6Samples
6 samples of the strips of the cluster
float m_svdRes
residual computed by genfit
float m_svdTrkPosErrUnbiased
unbiased track position error
TTree * m_t_U
tree containing info related to the U side clusters
float m_svdTrkPosOS
track position on the other side
std::vector< float > m_svdStripTime
time of the strips of the cluster
float m_svdTrkPrimeUnbiased
unbiased tan of incident angle projected on u,w
std::string m_recoTracksStoreArrayName
storeArray name of the input and output RecoTracks
TFile * m_rootFilePtr
pointer at root file used for storing histograms
int m_svdTrkSVDHits
number of SVD hits on the track
Abstract base class for different kinds of events.