1#ifndef Analysis_PRIMARYVTX_H
2#define Analysis_PRIMARYVTX_H
4#include "GaudiKernel/AlgFactory.h"
5#include "GaudiKernel/Algorithm.h"
6#include "GaudiKernel/NTuple.h"
8#include "CLHEP/Matrix/Vector.h"
9#include "EvtRecEvent/EvtRecPrimaryVertex.h"
10#include "EvtRecEvent/EvtRecTrack.h"
12using CLHEP::HepVector;
18 PrimaryVertex(
const std::string& name, ISvcLocator* pSvcLocator);
24 StatusCode RegisterEvtRecPrimaryVertex(
28 void SelectGoodChargedTracks(
29 SmartDataPtr<EvtRecEvent>& recEvent,
30 SmartDataPtr<EvtRecTrackCol>& recTrackCol,
31 std::vector<int>& icp, std::vector<int>& icm, std::vector<int>& iGood);
40 double m_globalChisqCut;
43 int m_vertexIteration;
44 double m_chi2CutforTrkIter;
46 double m_chi2CutforSmooth;
61 NTuple::Tuple* m_tuple1;
62 NTuple::Item<double> m_chig;
63 NTuple::Item<long> m_ndofg;
64 NTuple::Item<double> m_probg;
65 NTuple::Item<double> m_gvx;
66 NTuple::Item<double> m_gvy;
67 NTuple::Item<double> m_gvz;
69 NTuple::Tuple* m_tuple2;
70 NTuple::Item<double> m_chis;
71 NTuple::Item<double> m_chif;
72 NTuple::Item<double> m_probs;
73 NTuple::Item<double> m_probf;
75 NTuple::Tuple* m_tuple3;
76 NTuple::Item<double> m_pull_drho;
77 NTuple::Item<double> m_pull_phi;
78 NTuple::Item<double> m_pull_kapha;
79 NTuple::Item<double> m_pull_dz;
80 NTuple::Item<double> m_pull_lamb;
81 NTuple::Item<double> m_pull_momentum;
83 NTuple::Tuple* m_tuple4;
84 NTuple::Item<double> m_chik;
85 NTuple::Item<long> m_ndofk;
86 NTuple::Item<double> m_probk;
87 NTuple::Item<double> m_kvx;
88 NTuple::Item<double> m_kvy;
89 NTuple::Item<double> m_kvz;