CGEM BOSS 6.6.5.i
BESIII Offline Software System
Loading...
Searching...
No Matches
TrkHotListUnowned.h
Go to the documentation of this file.
1//--------------------------------------------------------------------------
2// File and Version Information:
3// $Id: TrkHotListUnowned.h,v 1.1.1.1 2005/04/21 06:01:42 zhangy Exp $
4//
5// Description: class TrkHotListUnowned. A copy of TrkHotListFull where the
6// hots are not owned by this class. This is useful in nested reps like the
7// mini-rep, where only 1 can truely own the hots but both may need access to
8// them.
9//
10// Environment:
11// Software developed for the BaBar Detector at the SLAC B-Factory.
12//
13//// Copyright Information:
14// Copyright (C) 2000 Lawrence Berkeley Laboratory
15//
16// Author List:
17// Dave Brown 11/6/00
18//------------------------------------------------------------------------
19
20#ifndef TRKHOTLISTUNOWNED_HH
21#define TRKHOTLISTUNOWNED_HH
22#include "TrkBase/TrkHotList.h"
24
25class TrkFundHit;
26class TrkHitOnTrk;
27class TrkRep;
28
29// Class interface //
31public:
32// create new HotList from another
33 TrkHotListUnowned(TrkHotList* other,bool takehotlist=false);
34// copy and assignment are OK for this class
37// cloning
39 virtual ~TrkHotListUnowned();
40
41 virtual bool hitCapable() const;
42 virtual int nActive(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const;
43 virtual int nMdc(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const;
44 virtual int nSvt(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const;
45 virtual int nHit(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const;
46 virtual TrkView svtView(int layer) const;
47 virtual unsigned firstMdcLayer() const;
48 virtual unsigned lastMdcLayer() const;
49 virtual double startFoundRange() const;
50 virtual double endFoundRange() const;
51 virtual bool isActive(unsigned ihot) const;
52
53 void append(TrkHitOnTrk* );
54 void remove(TrkHitOnTrk* );
55 TrkHitOnTrk* findHot(const TrkFundHit*) const;
56 virtual void updateHots();
57// special function for this class
58 const TrkHotList* myHotList() const { return _hotl; }
59// take ownership
61protected:
62 virtual const std::vector<TrkHitOnTrk*>& hotlist() const;
63 virtual std::vector<TrkHitOnTrk*>& hotlist();
64private:
65// reference to the real HotList
66 TrkHotList* _hotl;
67 bool _ownhots; // do I own these or not?
68};
69
70#endif
virtual bool isActive(unsigned ihot) const
virtual bool hitCapable() const
void append(TrkHitOnTrk *)
virtual TrkView svtView(int layer) const
virtual int nSvt(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const
virtual double startFoundRange() const
virtual unsigned lastMdcLayer() const
virtual unsigned firstMdcLayer() const
TrkHotList * clone(TrkBase::Functors::cloneHot) const
virtual int nMdc(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const
virtual int nHit(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const
void remove(TrkHitOnTrk *)
TrkHitOnTrk * findHot(const TrkFundHit *) const
TrkHotListUnowned(const TrkHotListUnowned &rhs)
virtual void updateHots()
TrkHotListUnowned & operator=(const TrkHotListUnowned &)
const TrkHotList * myHotList() const
virtual int nActive(TrkEnums::TrkViewInfo view=TrkEnums::bothView) const
virtual const std::vector< TrkHitOnTrk * > & hotlist() const
virtual double endFoundRange() const
TrkHotList * takeHotList()
friend class TrkHotListUnowned
Definition TrkHotList.h:92
@ bothView
Definition TrkEnums.h:22