BOSS 7.0.4
BESIII Offline Software System
Loading...
Searching...
No Matches
InstallArea/include/RootEventData/RootEventData/TEvtRecPrimaryVertex.h
Go to the documentation of this file.
1#ifndef RootEventData_TEvtRecPrimaryVertex_H
2#define RootEventData_TEvtRecPrimaryVertex_H
3
4#include <vector>
5#include "TObject.h"
6
7class TEvtRecPrimaryVertex : public TObject {
8 public:
11
12 Bool_t isValid() const {return m_isValid;}
13 Int_t nTracks() const {return m_nTracks;}
14 const std::vector<Int_t>& trackIdList() const {return m_trackIdList;}
15 Double_t chi2() const {return m_chi2;}
16 Int_t ndof() const {return m_ndof;}
17 Int_t fitMethod() const {return m_fitMethod;}
18 Double_t vertex(Int_t i) const {return m_vtx[i];}
19 Double_t errorVertex(Int_t i) const {return m_Evtx[i];}
20
21 void setIsValid(Bool_t isValid) {m_isValid = isValid;}
22 void setNTracks(Int_t nTracks) {m_nTracks = nTracks;}
23 void setTrackIdList(const std::vector<Int_t>& trackIdList) {m_trackIdList = trackIdList;}
24 void setChi2(Double_t chi2) {m_chi2 = chi2;}
25 void setNdof(Int_t ndof) {m_ndof = ndof;}
26 void setFitMethod(Int_t fitMethod) {m_fitMethod = fitMethod;}
27 void setVertex(Double_t vtx[3]) {
28 for (Int_t i = 0; i < 3; i++) m_vtx[i] = vtx[i];
29 }
30 void setErrorVertex(Double_t Evtx[6]) {
31 for (Int_t i = 0; i < 6; i++) m_Evtx[i] = Evtx[i];
32 }
33
34 private:
35 Bool_t m_isValid;
36 Int_t m_nTracks; //number of tracks contributing to vertex fitting
37 std::vector<Int_t> m_trackIdList; // id list of tracks contributing to vertex fitting
38 Double_t m_chi2; // chi square of vertex fitting
39 Int_t m_ndof; // degree of freedom
40 // for a fixed position => 2n; for unknown position => 2n-3;
41 Int_t m_fitMethod; // vertex fitting algorithm
42 // 0 => global method; 1 => kalman filter method;
43 Double_t m_vtx[3]; // primary vertex position : (Vx, Vy, Vz)
44 Double_t m_Evtx[6]; // error matrix of primary vertex
45
46 ClassDef(TEvtRecPrimaryVertex, 1)
47};
48
49#endif
50