BOSS 7.0.2
BESIII Offline Software System
Loading...
Searching...
No Matches
Event/RecTrackList/RecTrackList-00-00-09/RecTrackList/RecTrackList.h
Go to the documentation of this file.
1#ifndef RECTRACKLIST_H
2#define RECTRACKLIST_H
3
4#include "GaudiKernel/ObjectVector.h"
5#include "GaudiKernel/ContainedObject.h"
6#include "GaudiKernel/SmartRef.h"
7#include "EventModel/EventModel.h"
8#include "MdcRecEvent/RecMdcTrack.h"
9#include "MdcRecEvent/RecMdcKalTrack.h"
10#include "MdcRecEvent/RecMdcDedx.h"
11#include "ExtEvent/RecExtTrack.h"
12#include "TofRecEvent/RecTofTrack.h"
13#include "EmcRecEventModel/RecEmcShower.h"
14#include "MucRecEvent/RecMucTrack.h"
15
16using namespace EventModel;
17
18extern const CLID &CLID_RecTrackList;
19
20class RecTrackList:virtual public ContainedObject
21{
22 public:
23 virtual const CLID& clID() const {return RecTrackList::classID();}
24 static const CLID& classID() { return CLID_RecTrackList;}
25
28
30
31 bool IsMdcTrkValid() {return (myMdcTrk != 0);}
32 bool IsMdcKalTrkValid() {return (myKalTrk != 0);}
33 bool IsDedxValid() {return (myMdcDedx != 0);}
34 bool IsExtTrkValid() {return (myExtTrk != 0);}
35 bool IsTofTrkValid() {return (myTofTrk != 0);}
36 bool IsEmcTrkValid() {return (myRecEmcShower != 0);}
37 bool IsMucTrkValid() {return (myMucTrk != 0);}
38
39 int GetTrkId() {return myTrkId;}
40 RecMdcTrack* MdcTrk() {return myMdcTrk;}
41 RecMdcKalTrack* MdcKalTrk() {return myKalTrk;}
42 RecMdcDedx* DedxTrk() {return myMdcDedx;}
43 RecExtTrack* ExtTrk() {return myExtTrk;}
44 RecTofTrack* TofTrk() {return myTofTrk;}
45 RecEmcShower* EmcTrk() {return myRecEmcShower;}
46 RecMucTrack* MucTrk() {return myMucTrk;}
47
48 void setTrackID(const int trkID) { myTrkId = trkID;}
49 void setMdcTrk( RecMdcTrack* trk) { myMdcTrk = trk;}
50 void setMdcKalTrk( RecMdcKalTrack* trk) { myKalTrk = trk;}
51 void setDedxTrk( RecMdcDedx* trk) { myMdcDedx = trk;}
52 void setExtTrk( RecExtTrack* trk) { myExtTrk = trk;}
53 void setTofTrk( RecTofTrack* trk) { myTofTrk = trk;}
54 void setEmcTrk( RecEmcShower* trk) { myRecEmcShower = trk;}
55 void setMucTrk( RecMucTrack* trk) { myMucTrk = trk;}
56
57 int MdcTrkIdx() { return myMdcTrkIdx;}
58 int MdcKalTrkIdx() { return myKalTrkIdx;}
59 int DedxTrkIdx() { return myMdcDedxIdx;}
60 int ExtTrkIdx() { return myExtTrkIdx;}
61 int TofTrkIdx() { return myTofTrkIdx;}
62 int EmcTrkIdx() { return myRecEmcShowerIdx;}
63 int MucTrkIdx() { return myMucTrkIdx;}
64
65 void setMdcTrkIdx( int idx ) { myMdcTrkIdx = idx ;}
66 void setMdcKalTrkIdx( int idx ) { myKalTrkIdx = idx ;}
67 void setDedxTrkIdx( int idx ) { myMdcDedxIdx = idx ;}
68 void setExtTrkIdx( int idx ) { myExtTrkIdx = idx ;}
69 void setTofTrkIdx( int idx ) { myTofTrkIdx = idx ;}
70 void setEmcTrkIdx( int idx ) { myRecEmcShowerIdx = idx ;}
71 void setMucTrkIdx( int idx ) { myMucTrkIdx = idx;}
72
73
75
76
77 private:
78 int myTrkId;
79 SmartRef<RecMdcTrack> myMdcTrk;
80 SmartRef<RecMdcKalTrack> myKalTrk;
81 SmartRef<RecMdcDedx> myMdcDedx;
82 SmartRef<RecExtTrack> myExtTrk;
83 SmartRef<RecTofTrack> myTofTrk;
84 SmartRef<RecEmcShower> myRecEmcShower;
85 SmartRef<RecMucTrack> myMucTrk;
86
87 int myMdcTrkIdx;
88 int myKalTrkIdx;
89 int myMdcDedxIdx;
90 int myExtTrkIdx;
91 int myTofTrkIdx;
92 int myRecEmcShowerIdx;
93 int myMucTrkIdx;
94};
95
96typedef ObjectVector<RecTrackList> RecTrackListCol;
97
98typedef RecTrackListCol::iterator RecTrackIterator;
99typedef RecMdcTrackCol::iterator RecMdcTrackIterator;
100typedef RecMdcKalTrackCol::iterator RecMdcKalTrackIterator;
101
102
103#endif
const CLID & CLID_RecTrackList
const CLID & CLID_RecTrackList
RecTrackList & operator=(const RecTrackList &)