Belle II Software  release-08-01-10
VertexVariables.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 <analysis/VariableManager/Manager.h>
12 
13 #include <vector>
14 #include <string>
15 
16 namespace Belle2 {
21  class Particle;
22 
23  namespace Variable {
24  // Generated vertex information
28  double mcDecayVertexX(const Particle* part);
29 
33  double mcDecayVertexY(const Particle* part);
34 
38  double mcDecayVertexZ(const Particle* part);
39 
43  double mcDecayVertexRho(const Particle* part);
44 
48  double mcDecayVertexFromIPX(const Particle* part);
49 
53  double mcDecayVertexFromIPY(const Particle* part);
54 
58  double mcDecayVertexFromIPZ(const Particle* part);
59 
63  double mcDecayVertexFromIPRho(const Particle* part);
64 
68  double mcDecayVertexFromIPDistance(const Particle* part);
69 
73  double mcProductionVertexX(const Particle* part);
74 
78  double mcProductionVertexY(const Particle* part);
79 
83  double mcProductionVertexZ(const Particle* part);
84 
88  double mcProductionVertexFromIPX(const Particle* part);
89 
93  double mcProductionVertexFromIPY(const Particle* part);
94 
98  double mcProductionVertexFromIPZ(const Particle* part);
99 
103  double particleX(const Particle* part);
104 
108  double particleY(const Particle* part);
109 
113  double particleZ(const Particle* part);
114 
118  double particleDX(const Particle* part);
119 
123  double particleDY(const Particle* part);
124 
128  double particleDZ(const Particle* part);
129 
133  double particleDXUncertainty(const Particle* part);
134 
138  double particleDYUncertainty(const Particle* part);
139 
143  double particleDZUncertainty(const Particle* part);
144 
148  double particleDRho(const Particle* part);
149 
153  double particleDPhi(const Particle* part);
154 
158  double particleDCosTheta(const Particle* part);
162  double particleDistance(const Particle* part);
163 
168  double particleDistanceSignificance(const Particle* part);
169  // Production vertex position
173  double particleProductionX(const Particle* part);
177  double particleProductionY(const Particle* part);
181  double particleProductionZ(const Particle* part);
185  double particleProductionCovElement(const Particle* part, const std::vector<double>& indices);
189  double particleProductionXErr(const Particle* part);
193  double particleProductionYErr(const Particle* part);
197  double particleProductionZErr(const Particle* part);
198  }
200 } //namespace Belle2
Abstract base class for different kinds of events.