CGEM BOSS 6.6.5.g
BESIII Offline Software System
Loading...
Searching...
No Matches
TrkExpectedHotSet.h
Go to the documentation of this file.
1//--------------------------------------------------------------------------
2// File and Version Information:
3// $Id: TrkExpectedHotSet.h,v 1.1.1.1 2005/04/21 06:01:42 zhangy Exp $
4//
5// Description:
6// Defines a set of Expected hit on a track.
7//
8// Environment:
9// Software developed for the BaBar Detector at the SLAC B-Factory.
10//
11// Authors: Eric Charles UW Madison
12//
13//------------------------------------------------------------------------
14
15#ifndef TRKEXPECTEDHOTSET_HH
16#define TRKEXPECTEDHOTSET_HH
17
18//---------------
19// C++ Headers --
20//---------------
21
22#include <iostream>
24
25//----------------
26// BaBar Headers
27//----------------
28
29#include <vector>
30
31class TrkExpectedTrk;
32class TrkExpectedHot;
33class TrkFitTypeKey;
34class TrkFundHit;
35class TrkHitOnTrk;
36class TrkHitList;
37
38// Class interface //
40
41public:
42
43 // Construct from the cell and the hit
45 const int& maxFits );
46
47 // Destructor
48 virtual ~TrkExpectedHotSet();
49
50 // operator == for vectors, check identity
51 bool operator== ( const TrkExpectedHotSet& rhs ) {
52 return this == &rhs;
53 }
54
55 // Access to the cell id (offset by subsystem)
56 const TrkDetElemId& elemId() const{
57 return _elemId;
58 };
59
60 // access to the hot ( from the key )
61 const TrkExpectedHot* exHot( const TrkFitTypeKey& key ) const;
62 // the "reference" exHot
63 const TrkExpectedHot* exHot( ) const;
64
65 // access to the other hots from fund hits
66 void getHots( std::vector<TrkHitOnTrk*>& hots ) const;
67
68 // is this fit type already in?
69 bool hasFitType( const TrkFitTypeKey& key ) const;
70
71 // other access
72 const std::vector<int>& fitTypeMap() const { return _fitTypeMap; }
73 std::vector<TrkExpectedHot*> theHots() const { return _theHots; }
74
75 // add info from a track
76 bool addInfo( TrkExpectedHot* aHot,
77 const TrkFitTypeKey& key );
78
79 void printFit( const TrkFitTypeKey& key,
80 std::ostream& os = std::cout ) const;
81
82 bool isSvt() const;
83 bool isMdc() const;
84
85 const TrkExpectedTrk* exTrk() const { return _exTrk; }
86
87protected:
88
89 void setExTrk( const TrkExpectedTrk* anExTrk );
90
91private:
92
93 const TrkDetElemId _elemId;
94 int _nFit;
95
96 std::vector<int> _fitTypeMap;
97 std::vector<TrkExpectedHot*> _theHots;
98
99 friend class TrkExpectedTrk;
101
102 const TrkExpectedTrk* _exTrk;
103
104};
105
106#endif
107
108
109
110
111
*************DOUBLE PRECISION m_pi *DOUBLE PRECISION m_HvecTau2 DOUBLE PRECISION m_HvClone2 DOUBLE PRECISION m_gamma1 DOUBLE PRECISION m_gamma2 DOUBLE PRECISION m_thet1 DOUBLE PRECISION m_thet2 INTEGER m_IFPHOT *COMMON c_Taupair $ !Spin Polarimeter vector first Tau $ !Spin Polarimeter vector second Tau $ !Clone Spin Polarimeter vector first Tau $ !Clone Spin Polarimeter vector second Tau $ !Random Euler angle for cloning st tau $ !Random Euler angle for cloning st tau $ !Random Euler angle for cloning st tau $ !Random Euler angle for cloning nd tau $ !Random Euler angle for cloning nd tau $ !Random Euler angle for cloning nd tau $ !phi of HvecTau1 $ !theta of HvecTau1 $ !phi of HvecTau2 $ !theta of HvecTau2 $ !super key
Definition: Taupair.h:42
bool addInfo(TrkExpectedHot *aHot, const TrkFitTypeKey &key)
std::vector< TrkExpectedHot * > theHots() const
void getHots(std::vector< TrkHitOnTrk * > &hots) const
bool operator==(const TrkExpectedHotSet &rhs)
const TrkExpectedHot * exHot() const
const TrkExpectedTrk * exTrk() const
bool hasFitType(const TrkFitTypeKey &key) const
friend class TrkExpectedHotFactory
void setExTrk(const TrkExpectedTrk *anExTrk)
const std::vector< int > & fitTypeMap() const
void printFit(const TrkFitTypeKey &key, std::ostream &os=std::cout) const
const TrkDetElemId & elemId() const