Belle II Software  release-05-02-19
TrackVariables.h
1 /**************************************************************************
2  * BASF2 (Belle Analysis Framework 2) *
3  * Copyright(C) 2014-2019 - Belle II Collaboration *
4  * *
5  * Author: The Belle II Collaboration *
6  * Contributors: Anze Zupanc, Sam Cunliffe, Martin Heck, Torben Ferber *
7  * *
8  * This software is provided "as is" without any warranty. *
9  **************************************************************************/
10 
11 #pragma once
12 
13 #include <analysis/dataobjects/Particle.h>
14 #include <framework/gearbox/Const.h>
15 
16 namespace Belle2 {
22  namespace Variable {
23 
29  double trackNHits(const Particle* part, const Const::EDetector& det);
30 
34  double trackNCDCHits(const Particle* part);
35 
39  double trackNSVDHits(const Particle* part);
40 
44  double trackNPXDHits(const Particle* part);
45 
49  double trackNVXDHits(const Particle* part);
50 
54  double trackNDF(const Particle* part);
55 
59  double trackChi2(const Particle* part);
60 
64  double trackFirstSVDLayer(const Particle* part);
65 
69  double trackFirstPXDLayer(const Particle* part);
70 
74  double trackFirstCDCLayer(const Particle* part);
75 
79  double trackLastCDCLayer(const Particle* part);
80 
84  double trackD0(const Particle* part);
85 
89  double trackPhi0(const Particle* part);
90 
94  double trackOmega(const Particle* part);
95 
99  double trackZ0(const Particle* part);
100 
104  double trackTanLambda(const Particle* part);
105 
109  double trackD0Error(const Particle* part);
110 
114  double trackPhi0Error(const Particle* part);
115 
119  double trackOmegaError(const Particle* part);
120 
124  double trackZ0Error(const Particle* part);
125 
129  double trackTanLambdaError(const Particle* part);
130 
134  double trackPValue(const Particle* part);
135 
140  double trackNECLClusters(const Particle* part);
141 
145  double nExtraCDCHits(const Particle*);
146 
147  /*
148  * returns the number of CDC hits in the event not assigned to any track
149  * nor very likely beam background (i.e. hits that survive cleanup selection)
150  */
151  double nExtraCDCHitsPostCleaning(const Particle*);
152 
153  /*
154  * checks for the presence of a non-assigned hit in the specified CDC layer
155  */
156  double hasExtraCDCHitsInLayer(const Particle*, const std::vector<double>& layer);
157 
161  double hasExtraCDCHitsInSuperLayer(const Particle*, const std::vector<double>& layer);
162 
166  double nExtraCDCSegments(const Particle*);
167 
171  double nExtraVXDHitsInLayer(const Particle*, const std::vector<double>& layer);
172 
176  double nExtraVXDHits(const Particle*);
177 
181  double svdFirstSampleTime(const Particle*);
182 
187  double trackFindingFailureFlag(const Particle*);
188 
193  double trackHelixExtTheta(const Particle* part, const std::vector<double>& pars);
194 
199  double trackHelixExtPhi(const Particle* part, const std::vector<double>& pars);
200 
204  double trackFitHypothesisPDG(const Particle* part);
205 
207  double getHelixD0Pull(const Particle* part);
208 
210  double getHelixPhi0Pull(const Particle* part);
211 
213  double getHelixOmegaPull(const Particle* part);
214 
216  double getHelixZ0Pull(const Particle* part);
217 
219  double getHelixTanLambdaPull(const Particle* part);
220 
222  TrackFitResult const* getTrackFitResultFromParticle(Particle const* particle);
223  }
225 } // Belle2 namespace
226 
Belle2::Const::EDetector
EDetector
Enum for identifying the detector components (detector and subdetector).
Definition: Const.h:44
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19