BOSS 7.0.2
BESIII Offline Software System
Loading...
Searching...
No Matches
Mdc/MdcRecEvent/MdcRecEvent-00-05-14/MdcRecEvent/RecMdcTrack.h
Go to the documentation of this file.
1/*
2 *
3 * this class models "Track" used in Mdc Reconstruction
4 *
5 * ********************************************************/
6
7#ifndef RECMDCTRACK_H
8#define RECMDCTRACK_H
9#include "GaudiKernel/ContainedObject.h"
10#include "GaudiKernel/SmartRef.h"
11#include "GaudiKernel/SmartRefVector.h"
12#include "GaudiKernel/ObjectVector.h"
13#include "EventModel/EventModel.h"
14#include "DstEvent/DstMdcTrack.h"
15#include "CLHEP/Matrix/Vector.h"
16#include "CLHEP/Matrix/SymMatrix.h"
17#include "CLHEP/Vector/ThreeVector.h"
18#include "CLHEP/Geometry/Point3D.h"
19#include "RecMdcHit.h"
20
21 extern const CLID& CLID_RecMdcTrack;
22 typedef SmartRefVector<RecMdcHit> HitRefVec;
23 class RecMdcTrack : public DstMdcTrack {
24 public:
25 virtual const CLID& clID() const;
26 static const CLID& classID();
27
28 //ctor and dector
35
36 //extractors
37 //const int getTrkId() const { return m_trackId; }
38 //const double getDr() const { return m_helix[0]; }
39 //const double getFi0() const { return m_helix[1]; }
40 //const double getCpa() const { return m_helix[2]; }
41 //const double getDz() const { return m_helix[3]; }
42 //const double getTanl() const { return m_helix[4]; }
43 const double getVX0() const { return m_pivot[0]; }
44 const double getVY0() const { return m_pivot[1]; }
45 const double getVZ0() const { return m_pivot[2]; }
46 //const double getX0() const { return m_poca[0]; }
47 //const double getY0() const { return m_poca[1]; }
48 //const double getZ0() const { return m_poca[2]; }
49 const int getNhits() const { return m_nhits; }
50 //const double getChisq() const { return m_chi2; }
51 //const int getNdf() const { return m_ndof; }
52 const double getFiTerm() const { return m_fiTerm; }
53 //const int getNster() const { return m_nster; }
54 //const int getStat() const { return m_stat; }
55 //const int getCharge() const { return m_charge; }
56 const HepPoint3D& getPivot() const { return m_pivot; }
57 //const HepPoint3D& getPoca() const { return m_poca3D; }
58 //const HepVector& getHelix() const { return m_a; }
59 //const HepSymMatrix& getError() const { return m_Ea; }
60 const HitRefVec getVecHits(void) const { return m_vechits; }
61
62 //modifiers
63 void setVX0(double x0) { m_pivot[0] = x0; }
64 void setVY0(double y0) { m_pivot[1] = y0; }
65 void setVZ0(double z0) { m_pivot[2] = z0; }
66 void setFiTerm(double fiterm) { m_fiTerm = fiterm; }
67 void setNhits(int nhits) { m_nhits = nhits; }
68 void setPivot(const HepPoint3D& pivot) { m_pivot = pivot; }
69 void setVecHits(HitRefVec vechits) { m_vechits = vechits; }
70
71 private:
72 HepPoint3D m_pivot; // pivot of the track
73 double m_fiTerm; // phi angle value at track terminated point
74 int m_nhits; // number of total hits contained
75 HitRefVec m_vechits; // hit list of the track
76 //vector<int> m_vecHits; // hit list of the track wensp
77};
78
79typedef ObjectVector<RecMdcTrack> RecMdcTrackCol;
80
81#endif
82
SmartRefVector< RecMdcHit > HitRefVec
const CLID & CLID_RecMdcTrack
Definition: EventModel.cxx:295
ObjectVector< RecMdcTrack > RecMdcTrackCol
virtual const CLID & clID() const
RecMdcTrack(const RecMdcTrack &)
RecMdcTrack & operator=(const DstMdcTrack &)
RecMdcTrack(const DstMdcTrack &)
static const CLID & classID()
RecMdcTrack & operator=(const RecMdcTrack &)