#ifndef STNTUPLE_TStnSecVtxTag #define STNTUPLE_TStnSecVtxTag #ifdef __GNUG__ #pragma interface #endif class CdfTrack; class SecVtxObj; class TStnTrack; #include "TObject.h" #include "TLorentzVector.h" #include "Stntuple/base/TMatrix33.hh" // #include "Stntuple/obj/TStnJet.hh" class TStnSecVtxTag : public TObject { friend Int_t StntupleInitSecVtxTag(TStnSecVtxTag*, const SecVtxObj*, int ); public: //------------------------------------------------------------------------------ // data members //------------------------------------------------------------------------------ Int_t fJet; // Jet index in Stntuple JetBlock Int_t fNTrackGd; // Num good tracks in this jet Int_t fNTrackSd1; // Num tracks passing sd0 cut (Pass1) Int_t fNTrackSd2; // Num Pass2 tracks Int_t fNTrackTg; // Num tracks used in vertex Int_t fTag; // tagged or not Int_t fPass; // pass id Int_t fCharge; // charge Float_t fL3d; // decay length Float_t fDl3d; // error of decay length Float_t fL2d; // 2d length Float_t fDl2d; // error of 2d length Float_t fLzd; // dz Float_t fDlzd; // error of dz Float_t fChisq; // chi^2 Float_t fChisqr; // chi^2 in r-phi Float_t fChisqz; // chi^2 in z Float_t fMisTag; // Mistag prob TVector3 fSecVertex; // 3d position of secondary vertex TMatrix33 fErrorMatrix; //|| error Matrix TLorentzVector fSecVertex4; // SecVtx 4 vector //------------------------------------------------------------------------------ // functions //------------------------------------------------------------------------------ public: // ****** constructors and destructor TStnSecVtxTag(); virtual ~TStnSecVtxTag(); // ****** accessors Int_t Jet () { return fJet; } Int_t Tag () { return fTag; } Int_t Pass () { return fPass; } TVector3 SecVertex () { return fSecVertex; } TMatrix33 ErrorMatrix () { return fErrorMatrix; } TLorentzVector SecVertex4 () { return fSecVertex4; } Float_t L3d () { return fL3d; } Float_t Dl3d () { return fDl3d; } Float_t L2d () { return fL2d; } Float_t Dl2d () { return fDl2d; } Float_t Lzd () { return fLzd; } Float_t Dlzd () { return fDlzd; } Float_t Chisq () { return fChisq; } Float_t Chisqr () { return fChisqr; } Float_t Chisqz () { return fChisqz; } Float_t Charge () { return fCharge; } Float_t MisTag () { return fMisTag; } Int_t NTrackGd () { return fNTrackGd; } Int_t NTrackSd1 () { return fNTrackSd1; } Int_t NTrackSd2 () { return fNTrackSd2; } Int_t NTrackTg () { return fNTrackTg; } void Print(Option_t* opt = "") const; ClassDef(TStnSecVtxTag,3) //class def }; #endif