BOSS 6.6.4.p03
BESIII Offline Software System
Loading...
Searching...
No Matches
TrkHotListEmpty.h
Go to the documentation of this file.
1//--------------------------------------------------------------------------
2// File and Version Information:
3// $Id: TrkHotListEmpty.h,v 1.1.1.1 2005/04/21 06:01:42 zhangy Exp $
4//
5// Description: List of hits (as HitOnTrk objects) associated with a
6// reconstructed track. Abstract base class.
7//
8// Environment:
9// Software developed for the BaBar Detector at the SLAC B-Factory.
10//
11// Author(s): Steve Schaffner
12//
13//------------------------------------------------------------------------
14#ifndef TRKHOTLISTEMPTY_HH
15#define TRKHOTLISTEMPTY_HH
16
17#include "TrkBase/TrkHotList.h"
18#include "TrkBase/TrkView.h"
19
20class TrkFundHit;
21class TrkHitOnTrk;
22class TrkRep;
23
24// Class interface //
26public:
27// constructors and such. The following assumes a uniform distribution
28// of hots between views, and default values for start/end layer. This
29// constructor is DEPRECATED, please don't use it in new code
30 TrkHotListEmpty(int nActive, int nSvt, int nMdc,
31 double startFoundRange, double endFoundRange);
32// full constructor; specify hots by type, and include in
33 TrkHotListEmpty(unsigned nPhi,unsigned nZ, unsigned nAxial, unsigned nStereo,
34 double startFoundRange, double endFoundRange,
35 unsigned firstmdclay,unsigned lastmdclay,
36 TrkView svtpattern[5],
37 const std::vector<unsigned>& inactive);
38// copy constructor; this is the prefered way to create an empty Hot list
39 TrkHotListEmpty(const TrkHotList& other);
40// equivalence is OK
42
44 virtual ~TrkHotListEmpty();
45
46 virtual bool hitCapable() const;
47 virtual int nActive(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const;
48 virtual int nMdc(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const;
49 virtual int nSvt(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const;
50 virtual int nHit(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const;
51 virtual TrkView svtView(int layer) const;
52 virtual unsigned firstMdcLayer() const;
53 virtual unsigned lastMdcLayer() const;
54 virtual double startFoundRange() const;
55 virtual double endFoundRange() const;
56 virtual bool isActive(unsigned ihot) const;
57 virtual void append(TrkHitOnTrk* );
58 virtual void remove(TrkHitOnTrk* );
59 TrkHitOnTrk* findHot(const TrkFundHit*) const;
60 virtual void updateHots();
61
62protected:
63 virtual const std::vector<TrkHitOnTrk*>& hotlist() const;
64 virtual std::vector<TrkHitOnTrk*>& hotlist();
65private:
66 unsigned _nAxial,_nStereo;
67 unsigned _nPhi,_nZ;
68 double _stFndRng;
69 double _endFndRng;
70 unsigned _firstmdc;
71 unsigned _lastmdc;
72 TrkView _svtpat[5];
73 std::vector<unsigned> _inactive; // indices of inactive hots
74 TrkHotListEmpty(const TrkHotListEmpty& rhs); //copy ctor
75// allow persistent to set inactive
76 void setInactive(std::vector<unsigned>& inactive ) {
77 _inactive = inactive; }
78 friend class KalMiniTrkK;
79};
80
81#endif
const int nPhi
const int nZ
virtual TrkView svtView(int layer) const
virtual int nHit(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const
virtual void updateHots()
virtual TrkHotList * clone(TrkBase::Functors::cloneHot) const
TrkHitOnTrk * findHot(const TrkFundHit *) const
virtual int nMdc(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const
virtual ~TrkHotListEmpty()
virtual int nSvt(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const
virtual bool isActive(unsigned ihot) const
virtual bool hitCapable() const
virtual unsigned lastMdcLayer() const
virtual int nActive(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const
TrkHotListEmpty & operator=(const TrkHotList &)
virtual void append(TrkHitOnTrk *)
virtual unsigned firstMdcLayer() const
virtual double endFoundRange() const
friend class KalMiniTrkK
virtual void remove(TrkHitOnTrk *)
virtual const std::vector< TrkHitOnTrk * > & hotlist() const
virtual double startFoundRange() const
Definition: TrkRep.h:43
TrkViewInfo
Definition: TrkEnums.h:22
@ bothView
Definition: TrkEnums.h:22