13#include <analysis/VariableManager/Manager.h>
14#include <framework/geometry/B2Vector3.h>
31 double particleTagVx(
const Particle* particle);
38 double particleTagVy(
const Particle* particle);
45 double particleTagVz(
const Particle* particle);
52 double getY4Sx(
const Particle* part);
59 double getY4Sy(
const Particle* part);
66 double getY4Sz(
const Particle* part);
73 double getSigBdecayTime(
const Particle* part);
80 double getTagBdecayTime(
const Particle* part);
87 double getDeltaT3D(
const Particle* part);
94 double particleTruthTagVx(
const Particle* particle);
101 double particleTruthTagVy(
const Particle* particle);
108 double particleTruthTagVz(
const Particle* particle);
115 double particleTagVpVal(
const Particle* particle);
122 double particleTagVNTracks(
const Particle* particle);
129 double particleTagVNTracks(
const Particle* particle);
136 double particleTagVNDF(
const Particle* particle);
143 double particleTagVChi2(
const Particle* particle);
150 double particleTagVChi2IP(
const Particle* particle);
158 double particleTagVxErr(
const Particle* particle);
165 double particleTagVyErr(
const Particle* particle);
172 double particleTagVzErr(
const Particle* particle);
179 double particleDeltaT(
const Particle* particle);
186 double particleDeltaTBelle(
const Particle* particle);
194 double particleDeltaTErr(
const Particle* particle);
201 double particleDeltaTRes(
const Particle* particle);
208 double particleMCDeltaTau(
const Particle* particle);
215 double particleMCDeltaT(
const Particle* particle);
222 double particleMCDeltaL(
const Particle* particle);
230 double particleDeltaZ(
const Particle* particle);
237 double particleDeltaZErr(
const Particle* particle);
244 double particleDeltaB(
const Particle* particle);
251 double particleDeltaBErr(
const Particle* particle);
257 double vertexBoostDirection(
const Particle* particle);
263 double vertexOrthogonalBoostDirection(
const Particle* particle);
269 double vertexTruthBoostDirection(
const Particle* particle);
275 double vertexTruthOrthogonalBoostDirection(
const Particle* particle);
281 double vertexErrBoostDirection(
const Particle* particle);
287 double vertexErrOrthBoostDirection(
const Particle* particle);
295 double tagVBoostDirection(
const Particle* particle);
301 double tagVOrthogonalBoostDirection(
const Particle* particle);
307 double tagVTruthBoostDirection(
const Particle* particle);
313 double tagVTruthOrthogonalBoostDirection(
const Particle* particle);
319 double tagVErrBoostDirection(
const Particle* particle);
325 double tagVErrOrthogonalBoostDirection(
const Particle* particle);
330 double particleCosThetaBoostDirection(
const Particle* part);
336 double particleInternalTagVMCFlavor(
const Particle* particle);
342 double tagTrackMomentum(
const Particle* part,
const std::vector<double>& trackIndex);
348 double tagTrackMomentumX(
const Particle* part,
const std::vector<double>& trackIndex);
354 double tagTrackMomentumY(
const Particle* part,
const std::vector<double>& trackIndex);
360 double tagTrackMomentumZ(
const Particle* part,
const std::vector<double>& trackIndex);
366 double tagTrackD0(
const Particle* part,
const std::vector<double>& trackIndex);
372 double tagTrackZ0(
const Particle* part,
const std::vector<double>& trackIndex);
378 double particleTagVNFitTracks(
const Particle* particle);
384 double tagTrackRaveWeight(
const Particle* part,
const std::vector<double>& trackIndex);
390 double tagTrackDistanceToConstraint(
const Particle* part,
const std::vector<double>& trackIndex);
398 double tagTrackDistanceToConstraintErr(
const Particle* part,
const std::vector<double>& trackIndex);
405 double tagTrackDistanceToConstraintSignificance(
const Particle* part,
const std::vector<double>& trackIndex);
412 double tagVDistanceToConstraint(
const Particle* part);
419 double tagVDistanceToConstraintErr(
const Particle* part);
425 double tagVDistanceToConstraintSignificance(
const Particle* part);
432 double tagTrackDistanceToTagV(
const Particle* part,
const std::vector<double>& trackIndex);
439 double tagTrackDistanceToTagVErr(
const Particle* part,
const std::vector<double>& trackIndex);
446 double tagTrackDistanceToTagVSignificance(
const Particle* part,
const std::vector<double>& trackIndex);
453 double tagTrackTrueDistanceToTagV(
const Particle* part,
const std::vector<double>& trackIndex);
460 B2Vector3D tagTrackTrueVecToTagV(
const Particle* part,
const std::vector<double>& trackIndex);
467 double tagTrackTrueVecToTagVX(
const Particle* part,
const std::vector<double>& trackIndex);
474 double tagTrackTrueVecToTagVY(
const Particle* part,
const std::vector<double>& trackIndex);
481 double tagTrackTrueVecToTagVZ(
const Particle* part,
const std::vector<double>& trackIndex);
487 B2Vector3D tagTrackTrueMomentum(
const Particle* part,
const std::vector<double>& trackIndex);
493 double tagTrackTrueMomentumX(
const Particle* part,
const std::vector<double>& trackIndex);
499 double tagTrackTrueMomentumY(
const Particle* part,
const std::vector<double>& trackIndex);
505 double tagTrackTrueMomentumZ(
const Particle* part,
const std::vector<double>& trackIndex);
511 B2Vector3D tagTrackTrueOrigin(
const Particle* part,
const std::vector<double>& trackIndex);
517 double tagTrackTrueOriginX(
const Particle* part,
const std::vector<double>& trackIndex);
523 double tagTrackTrueOriginY(
const Particle* part,
const std::vector<double>& trackIndex);
529 double tagTrackTrueOriginZ(
const Particle* part,
const std::vector<double>& trackIndex);
538 int fitTruthStatus(
const Particle* part);
547 int rollbackStatus(
const Particle* part);
557 typedef double (*TagTrFPtr)(
const Particle*,
const std::vector<double>&);
std::function< VarVariant(const Particle *)> FunctionPtr
functions stored take a const Particle* and return VarVariant.
B2Vector3< double > B2Vector3D
typedef for common usage with double
Abstract base class for different kinds of events.