CGEM BOSS 6.6.5.g
BESIII Offline Software System
Loading...
Searching...
No Matches
TrkHotListFull.h
Go to the documentation of this file.
1//--------------------------------------------------------------------------
2// File and Version Information:
3// $Id: TrkHotListFull.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. This derived class is for tracks that actually
7// have hits on them.
8//
9// Environment:
10// Software developed for the BaBar Detector at the SLAC B-Factory.
11//
12// Author(s): Steve Schaffner
13//
14// Modified 3-july-97 by Leon Rochester to use Roguewave Sorted Vector
15// to store the list of Hots. At some point the HepAList will go away.
16//------------------------------------------------------------------------
17
18#ifndef TRKHOTLISTFULL_HH
19#define TRKHOTLISTFULL_HH
20#include "TrkBase/TrkHotList.h"
22#include "TrkBase/TrkFunctors.h"
23
24class TrkFundHit;
25class TrkHitOnTrk;
26class TrkRep;
27
28// Class interface //
30public:
31 // constructors and such
33 // create new HotList, cloning old Hots and making the clones point at rep
34 TrkHotListFull(const TrkHotList& inHots, TrkBase::Functors::cloneHot func); // clone hots
35 TrkHotListFull( TrkHotList& inHots, TrkBase::Functors::setParent func); // steal hots
37 virtual ~TrkHotListFull();
38
39 virtual bool hitCapable() const;
40 virtual int nActive(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const;
41 virtual int nMdc(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const;
42 virtual int nSvt(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const;
43 virtual int nHit(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const;
44 virtual TrkView svtView(int layer) const;
45 virtual unsigned firstMdcLayer() const;
46 virtual unsigned lastMdcLayer() const;
47 virtual double startFoundRange() const;
48 virtual double endFoundRange() const;
49 virtual bool isActive(unsigned ihot) const;
50
51 void append(TrkHitOnTrk* );
52 void remove(TrkHitOnTrk* );
53 TrkHitOnTrk* findHot(const TrkFundHit*) const;
54 void updateHots();
55
56protected:
57 virtual const std::vector<TrkHitOnTrk*>& hotlist() const;
58 virtual std::vector<TrkHitOnTrk*>& hotlist();
59private:
60
61 static size_t dfltCapac(); // default capacity of vector
62 std::vector<TrkHitOnTrk*> _hotlist; // hits are owned by vector
63
64 // Preempt: Hots have to be cloned, not naively copied
65 TrkHotListFull(const TrkHotListFull& rhs); //copy ctor
66 TrkHotListFull& operator= (const TrkHotListFull&);
67};
68
69#endif
70
virtual unsigned firstMdcLayer() const
virtual int nActive(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const
virtual unsigned lastMdcLayer() const
virtual bool isActive(unsigned ihot) const
TrkHotList * clone(TrkBase::Functors::cloneHot func) const
virtual int nSvt(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const
virtual TrkView svtView(int layer) const
virtual double startFoundRange() const
virtual int nHit(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const
virtual const std::vector< TrkHitOnTrk * > & hotlist() const
TrkHitOnTrk * findHot(const TrkFundHit *) const
virtual int nMdc(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const
virtual double endFoundRange() const
virtual ~TrkHotListFull()
virtual bool hitCapable() const
void append(TrkHitOnTrk *)
void remove(TrkHitOnTrk *)
Definition: TrkRep.h:43
TrkViewInfo
Definition: TrkEnums.h:22
@ bothView
Definition: TrkEnums.h:22