/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Event/DstEvent/DstEvent-00-02-51/DstEvent/DstMucTrack.h

Go to the documentation of this file.
00001 #ifndef DST_MUCTRACK_H
00002 #define DST_MUCTRACK_H
00003 #include "GaudiKernel/ObjectVector.h"
00004 #include "GaudiKernel/ContainedObject.h"
00005 #include "EventModel/EventModel.h"
00006 #include <vector>
00007 
00008 using namespace std;
00009 
00010 using namespace EventModel;
00011 extern const CLID &CLID_DstMucTrack;
00012 
00013 //class MucTrack;
00014 class DstMucTrack : virtual public ContainedObject {
00015 
00016 public:
00017    DstMucTrack() {}
00018 
00020    //DstMucTrack& operator=(const MucTrack& source);
00021 
00022    //void copy(const MucTrack* orig);
00023 
00025    //DstMucTrack(const MucTrack& source);
00026 
00027    virtual ~DstMucTrack() {}
00028 
00029   virtual const CLID& clID()  const { return  DstMucTrack::classID();}
00030   static  const CLID& classID() { return CLID_DstMucTrack; }
00031    
00032   int  trackId()   const     { return   m_trackId ; }
00033   int  id()        const     { return   m_id; }
00034   int  status()    const     { return   m_status; } 
00035   int  type()      const     { return   m_type;  }
00036 
00037   int  startPart()         const     { return   m_startPart; }    // start position of track locates in which part
00038   int  endPart()           const     { return   m_endPart; }      // end   position of track locates in which part
00039   int  brLastLayer()       const     { return   m_brLastLayer;  } // last layer with hits in barrel 
00040   int  ecLastLayer()       const     { return   m_ecLastLayer;  } // last layer with hits in end cap
00041   int  numHits()           const     { return   m_numHits;      } // total hits on the track   
00042   int  numLayers()         const     { return   m_numLayers;    } // number of layers with hits 
00043   int  maxHitsInLayer()    const     { return   m_maxHitsInLayer; }
00044   
00045   double  depth()   const   { return   m_depth;  }    // depth of the track transport in iron
00046   double  chi2()    const   { return   m_chi2;   }
00047   int     dof()     const   { return   m_dof;    }
00048   double  rms()     const   { return   m_rms;    }
00049 
00050   double  xPos()  const { return m_xPos; }   // position on the start of track in muc (vertex) 
00051   double  yPos()  const { return m_yPos; }
00052   double  zPos()  const { return m_zPos; }
00053 
00054   double  xPosSigma()  const { return m_xPosSigma; } 
00055   double  yPosSigma()  const { return m_yPosSigma; }
00056   double  zPosSigma()  const { return m_zPosSigma; }
00057   
00058   double  px()    const { return m_px; }   // momentum on the start of track in muc
00059   double  py()    const { return m_py; }
00060   double  pz()    const { return m_pz; }
00061 
00062   double  distance() const { return m_distance;}
00063   double  deltaPhi() const { return m_deltaPhi;}
00064   
00065   vector<int> vecHits() const { return  m_vecHits ;}
00066   
00067   //added by LI Chunhua 2013/02/01
00068   double kalRechi2() const {return m_kalrechi2;}
00069   int    kaldof()    const {return m_kaldof;}
00070   double kaldepth()  const {return m_kaldepth;}
00071   int    kalbrLastLayer() const {return m_kalbrLastLayer;}
00072   int    kalecLastLayer() const {return m_kalecLastLayer;}
00073   //**********************
00074   // Set
00075   void  setTrackId(int trackId) { m_trackId = trackId ;}
00076   void  setId(int id)      { m_id = id ; }
00077   void  setStatus(int st)  { m_status = st;  }
00078   void  setType(int type)  { m_type = type; }
00079 
00080   void  setStartPart(int part) {m_startPart = part; }
00081   void  setEndPart(int part)   {m_endPart = part;   }
00082   void  setBrLastLayer(int layer) {m_brLastLayer = layer; }
00083   void  setEcLastLayer(int layer) {m_ecLastLayer = layer; }
00084   void  setNumHits( int numHits)          { m_numHits  = numHits; }
00085   void  setNumLayers(int numLayers)       { m_numLayers = numLayers; }
00086   void  setMaxHitsInLayer(int maxHits)      { m_maxHitsInLayer = maxHits; }
00087 
00088   void  setDepth( double depth) { m_depth  = depth; }
00089   void  setChi2(double chi2)    { m_chi2   = chi2; }
00090   void  setDof(int dof)         { m_dof    = dof ; }
00091   void  setRms(double rms)      { m_rms    = rms ; }
00092 
00093   void  setXPos(double x)  { m_xPos = x; }
00094   void  setYPos(double y)  { m_yPos = y; }
00095   void  setZPos(double z)  { m_zPos = z; }
00096  
00097   void  setXPosSigma(double xsigma)  { m_xPosSigma = xsigma; }
00098   void  setYPosSigma(double ysigma)  { m_yPosSigma = ysigma; }
00099   void  setZPosSigma(double zsigma)  { m_zPosSigma = zsigma; }
00100   
00101   void  setPx( double px)  { m_px = px;  }
00102   void  setPy( double py)  { m_py = py;  }
00103   void  setPz( double pz)  { m_pz = pz;  }
00104 
00105   void  setDistance( double dist){m_distance = dist; }
00106   void  setDeltaPhi( double dphi){m_deltaPhi = dphi; }
00107   
00108   void  setVecHits(vector<int>& vecHits) { m_vecHits = vecHits; }
00109   //added by LI Chunhua
00110   void  setkalRechi2(double ch){m_kalrechi2=ch;}
00111   void  setkalDof(int f){m_kaldof = f;}
00112   void  setkalDepth(double de){m_kaldepth = de;}
00113   void  setkalbrLastLayer(int br){m_kalbrLastLayer = br;}
00114   void  setkalecLastLayer(int ec){m_kalecLastLayer = ec;}
00115   //******************
00116 
00117 protected:
00118     int m_trackId;    // Track ID wensp Add 2005-10-19
00119     int m_id;              // Muc Identifier
00120     int m_status;          // Muc Status
00121     int m_type;            // Method of judge?
00122 
00123     int m_startPart;       // In which part does the start position of track locate
00124     int m_endPart;         // In which part does the end   position of track locate
00125     int m_brLastLayer;     // Last layer with hits in barrel 
00126     int m_ecLastLayer;     // Last layer with hits in endcap 
00127     int m_numHits;         // Number of hits on track
00128     int m_numLayers;       // Number of layer with  hits
00129     int m_maxHitsInLayer;  // Max number of hits in a layer
00130              
00131     double m_depth;        // Depth of iron penetrated
00132     double m_chi2;         // Fit parameters
00133     int    m_dof; 
00134     double m_rms;
00135     
00136     double m_xPos;       // x position of muc track vertex
00137     double m_yPos;       // y position of muc track vertex
00138     double m_zPos;       // z position of muc track vertex
00139  
00140     double m_xPosSigma;  // sigma of x position of muc track vertex in first gap local coordinate.
00141     double m_yPosSigma;  // sigma of y ...
00142     double m_zPosSigma;  // sigma of z ...   ... so it' 0;
00143     
00144     double m_px;         // px on muc track vertex
00145     double m_py;         // py on muc track vertex
00146     double m_pz;         // pz on muc track vertex
00147   
00148     double m_distance;
00149     double m_deltaPhi;
00150     
00151     vector<int> m_vecHits; 
00152     
00153     //added by LI Chunhua
00154     double m_kalrechi2;
00155     int m_kaldof;
00156     double m_kaldepth;
00157     int m_kalbrLastLayer;
00158     int m_kalecLastLayer;
00159     //***************
00160 };
00161 
00162 typedef ObjectVector<DstMucTrack> DstMucTrackCol;
00163 #endif //NDST_DstMucTrack_H
00164 

Generated on Tue Nov 29 22:58:23 2016 for BOSS_7.0.2 by  doxygen 1.4.7