BOSS 6.6.4.p01
BESIII Offline Software System
Loading...
Searching...
No Matches
TrkKalTrk.h
Go to the documentation of this file.
1//--------------------------------------------------------------------------
2// File and Version Information:
3// $Id: TrkKalTrk.h,v 1.1.1.1 2005/04/21 06:01:42 zhangy Exp $
4//
5// Description:
6// class TrkKalTrk. Transient interface base class for persistent
7// form of Kalman track (mini-track).
8//
9// Environment:
10// Software developed for the BaBar Detector at the SLAC B-Factory.
11//
12// Copyright Information:
13// Copyright (C) 2000 Lawrence Berkeley Laboratory
14//
15// Author List:
16// Dave Brown 10/31/00
17//------------------------------------------------------------------------
18#ifndef TRKKALTRK_HH
19#define TRKKALTRK_HH
20
21class TrkHitOnTrk;
22class TrkHotList;
23class TrkSimpTraj;
24class TrkErrCode;
25#include <iosfwd>
26
27#include "MdcRecoUtil/PdtPid.h"
28#include "TrkBase/TrkEnums.h"
29
30class TrkKalTrk {
31public:
32// only default constructor, as there can be NO DATA MEMBERS in this class
33 TrkKalTrk();
34// pure virtual destructor, as this is a pure interface class
35 virtual ~TrkKalTrk() = 0;
36// a TrkKalTrk knows what its default PID Is
37 virtual PdtPid::PidType defaultHypo() const = 0;
38// it can tell you which fit a given hypo points to
39 virtual PdtPid::PidType fitHypo(PdtPid::PidType hypo) const = 0;
40// it knows what its (persistent) trk id is
41 virtual unsigned long trackId() const = 0;
42// it can return a seed trajectory. This function _RETURNS OWNERSHIP_
43 virtual TrkSimpTraj* seedTrajectory() const = 0;
44// it can return the T0 used when the track was fit
45 virtual double usedT0() const = 0;
46// it can report the fit status of a paritcular hypo
47 virtual bool isValid(PdtPid::PidType hypo) const = 0;
48 virtual bool isCurrent(PdtPid::PidType hypo) const = 0;
49 virtual TrkErrCode fitStatus(PdtPid::PidType hypo) const = 0;
50// A KalTrk should know how many svt, mdc hots and fits it has
51 virtual unsigned nSvt() const = 0;
52 virtual unsigned nMdc() const = 0;
53 virtual unsigned nFit() const = 0;
54// one implemented function; printout.
55 void print(std::ostream& os) const;
56private:
57};
58
59std::ostream& operator<<(std::ostream& os, const TrkKalTrk&);
60
61#endif
std::ostream & operator<<(std::ostream &os, const TrkKalTrk &)
PidType
Definition: PdtPid.h:11
virtual TrkSimpTraj * seedTrajectory() const =0
virtual unsigned nFit() const =0
virtual double usedT0() const =0
void print(std::ostream &os) const
Definition: TrkKalTrk.cxx:34
virtual TrkErrCode fitStatus(PdtPid::PidType hypo) const =0
virtual bool isCurrent(PdtPid::PidType hypo) const =0
virtual bool isValid(PdtPid::PidType hypo) const =0
virtual unsigned nMdc() const =0
virtual unsigned long trackId() const =0
virtual unsigned nSvt() const =0
virtual ~TrkKalTrk()=0
Definition: TrkKalTrk.cxx:30
virtual PdtPid::PidType defaultHypo() const =0
virtual PdtPid::PidType fitHypo(PdtPid::PidType hypo) const =0