1#ifndef VERTEXFITTERSIMPLE_ANALYZERS_H
2#define VERTEXFITTERSIMPLE_ANALYZERS_H
7#include "ROOT/RVec.hxx"
8#include "edm4hep/ReconstructedParticleData.h"
9#include "edm4hep/TrackState.h"
13#include "TMatrixDSym.h"
15#include "TDecompChol.h"
22#include "edm4hep/VertexData.h"
23#include "edm4hep/Vertex.h"
26#include "VertexMore.h"
37namespace VertexFitterSimple{
41 ROOT::VecOps::RVec<edm4hep::ReconstructedParticleData> recoparticles,
42 ROOT::VecOps::RVec<edm4hep::TrackState> alltracks,
43 bool BeamSpotConstraint =
false,
44 double sigmax=0.,
double sigmay=0.,
double sigmaz=0.,
45 double bsc_x=0.,
double bsc_y=0.,
double bsc_z=0. ) ;
50 bool BeamSpotConstraint =
false,
51 double sigmax=0.,
double sigmay=0.,
double sigmaz=0.,
52 double bsc_x=0.,
double bsc_y=0.,
double bsc_z=0. ) ;
55 const ROOT::VecOps::RVec<edm4hep::TrackState>& alltracks,
56 bool BeamSpotConstraint =
false,
57 double sigmax=0.,
double sigmay=0.,
double sigmaz=0.,
58 double bsc_x=0.,
double bsc_y=0.,
double bsc_z=0. ) ;
61 ROOT::VecOps::RVec<edm4hep::TrackState>
get_PrimaryTracks( ROOT::VecOps::RVec<edm4hep::TrackState> tracks,
62 bool BeamSpotConstraint,
63 double bsc_sigmax,
double bsc_sigmay,
double bsc_sigmaz,
64 double bsc_x,
double bsc_y,
double bsc_z ) ;
68 ROOT::VecOps::RVec<edm4hep::TrackState>
get_NonPrimaryTracks( ROOT::VecOps::RVec<edm4hep::TrackState> allTracks,
69 ROOT::VecOps::RVec<edm4hep::TrackState> primaryTracks ) ;
72 ROOT::VecOps::RVec<bool>
IsPrimary_forTracks( ROOT::VecOps::RVec<edm4hep::TrackState> allTracks,
73 ROOT::VecOps::RVec<edm4hep::TrackState> primaryTracks ) ;
VertexingUtils::FCCAnalysesVertex VertexFitter_Tk(int Primary, ROOT::VecOps::RVec< edm4hep::TrackState > tracks, bool BeamSpotConstraint=false, double sigmax=0., double sigmay=0., double sigmaz=0., double bsc_x=0., double bsc_y=0., double bsc_z=0.)
Vertex (code from Franco Bedeschi): passing the tracks. Units for the beamspot constraint: mum.
Definition VertexFitterSimple.cc:87
VertexingUtils::FCCAnalysesVertex VertexFitter(int Primary, ROOT::VecOps::RVec< edm4hep::ReconstructedParticleData > recoparticles, ROOT::VecOps::RVec< edm4hep::TrackState > alltracks, bool BeamSpotConstraint=false, double sigmax=0., double sigmay=0., double sigmaz=0., double bsc_x=0., double bsc_y=0., double bsc_z=0.)
Vertex (code from Franco Bedeschi): passing the recoparticles. Units for the beamspot constraint: mum...
Definition VertexFitterSimple.cc:40
ROOT::VecOps::RVec< edm4hep::TrackState > get_NonPrimaryTracks(ROOT::VecOps::RVec< edm4hep::TrackState > allTracks, ROOT::VecOps::RVec< edm4hep::TrackState > primaryTracks)
Return the tracks that are NOT flagged as coming from the primary vertex.
Definition VertexFitterSimple.cc:359
ROOT::VecOps::RVec< bool > IsPrimary_forTracks(ROOT::VecOps::RVec< edm4hep::TrackState > allTracks, ROOT::VecOps::RVec< edm4hep::TrackState > primaryTracks)
for an input vector of tracks, return a vector of bools that tell if the track was identified as a pr...
Definition VertexFitterSimple.cc:381
ROOT::VecOps::RVec< edm4hep::TrackState > get_PrimaryTracks(ROOT::VecOps::RVec< edm4hep::TrackState > tracks, bool BeamSpotConstraint, double bsc_sigmax, double bsc_sigmay, double bsc_sigmaz, double bsc_x, double bsc_y, double bsc_z)
Return the tracks that are flagged as coming from the primary vertex.
Definition VertexFitterSimple.cc:259
FCC analyzers collection.
Definition Algorithms.h:15
Structure to keep useful track information that is related to the vertex.
Definition VertexingUtils.h:38