1 #ifndef __StKFVertex_h__
2 #define __StKFVertex_h__
12 std::ostream& operator<<(std::ostream& os,
const StKFVertex& v);
15 StKFVertex(Int_t
id = -1) : fID(
id) , fIdTruth(0), fQuality(0), fIdParentTk(0),
16 fTimeMc(0), fNoDaughtersMc(0), fgePidMc(0)
17 {fKFTracks.SetOwner(kTRUE); Clear();}
20 virtual void Clear(Option_t *opt=
"") {fKFTracks.Clear(opt);}
24 Int_t
ID()
const {
return fID;}
27 TObjArray &Tracks() {
return *&fKFTracks;}
28 Int_t NoTracks()
const {
return fKFTracks.GetEntriesFast();}
29 Int_t Charge()
const {
return fVertex.GetQ();}
32 Double_t UpdateVertex2TrackChi2();
33 void Compress() {fKFTracks.Compress();}
35 Int_t IdTruth()
const {
return fIdTruth;}
36 Int_t QaTruth()
const {
return fQuality; }
37 Int_t IdParentTk()
const {
return fIdParentTk;}
38 void SetIdTruth(Int_t idtru,Int_t qatru=0) {fIdTruth = (UShort_t) idtru; fQuality = (UShort_t) qatru;}
39 void SetIdParentTk(Int_t
id) {fIdParentTk = id;}
40 Int_t MultW()
const {
return MultWE(1);}
41 Int_t MultE()
const {
return MultWE(2);}
42 Int_t MultWE(Int_t k = 1)
const;
45 void Print(Option_t *option=
"")
const {std::cout << option << *
this << std::endl; }
46 void PrintW(Option_t *option=
"")
const;
47 void SetMc(Float_t time, Float_t x, Float_t y, Float_t z, Int_t NoDaughters, Int_t gePid);
48 Float_t TimeMc()
const {
return fTimeMc;}
49 const TVector3 &XyzMc()
const {
return *&fXyzMc;}
50 Int_t NoDaughtersMc()
const {
return fNoDaughtersMc;}
51 Int_t gePidMc()
const {
return fgePidMc;}
52 static void SetDebug(Int_t k = 0) {_debug = k;}
53 static Int_t Debug() {
return _debug;}
67 static const Char_t *GeNames[52];