Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

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   // Set
00068   void  setTrackId(int trackId) { m_trackId = trackId ;}
00069   void  setId(int id)      { m_id = id ; }
00070   void  setStatus(int st)  { m_status = st;  }
00071   void  setType(int type)  { m_type = type; }
00072 
00073   void  setStartPart(int part) {m_startPart = part; }
00074   void  setEndPart(int part)   {m_endPart = part;   }
00075   void  setBrLastLayer(int layer) {m_brLastLayer = layer; }
00076   void  setEcLastLayer(int layer) {m_ecLastLayer = layer; }
00077   void  setNumHits( int numHits)          { m_numHits  = numHits; }
00078   void  setNumLayers(int numLayers)       { m_numLayers = numLayers; }
00079   void  setMaxHitsInLayer(int maxHits)      { m_maxHitsInLayer = maxHits; }
00080 
00081   void  setDepth( double depth) { m_depth  = depth; }
00082   void  setChi2(double chi2)    { m_chi2   = chi2; }
00083   void  setDof(int dof)         { m_dof    = dof ; }
00084   void  setRms(double rms)      { m_rms    = rms ; }
00085 
00086   void  setXPos(double x)  { m_xPos = x; }
00087   void  setYPos(double y)  { m_yPos = y; }
00088   void  setZPos(double z)  { m_zPos = z; }
00089  
00090   void  setXPosSigma(double xsigma)  { m_xPosSigma = xsigma; }
00091   void  setYPosSigma(double ysigma)  { m_yPosSigma = ysigma; }
00092   void  setZPosSigma(double zsigma)  { m_zPosSigma = zsigma; }
00093   
00094   void  setPx( double px)  { m_px = px;  }
00095   void  setPy( double py)  { m_py = py;  }
00096   void  setPz( double pz)  { m_pz = pz;  }
00097 
00098   void  setDistance( double dist){m_distance = dist; }
00099   void  setDeltaPhi( double dphi){m_deltaPhi = dphi; }
00100   
00101   void  setVecHits(vector<int>& vecHits) { m_vecHits = vecHits; }
00102   
00103 
00104 protected:
00105     int m_trackId;    // Track ID wensp Add 2005-10-19
00106     int m_id;              // Muc Identifier
00107     int m_status;          // Muc Status
00108     int m_type;            // Method of judge?
00109 
00110     int m_startPart;       // In which part does the start position of track locate
00111     int m_endPart;         // In which part does the end   position of track locate
00112     int m_brLastLayer;     // Last layer with hits in barrel 
00113     int m_ecLastLayer;     // Last layer with hits in endcap 
00114     int m_numHits;         // Number of hits on track
00115     int m_numLayers;       // Number of layer with  hits
00116     int m_maxHitsInLayer;  // Max number of hits in a layer
00117              
00118     double m_depth;        // Depth of iron penetrated
00119     double m_chi2;         // Fit parameters
00120     int    m_dof; 
00121     double m_rms;
00122     
00123     double m_xPos;       // x position of muc track vertex
00124     double m_yPos;       // y position of muc track vertex
00125     double m_zPos;       // z position of muc track vertex
00126  
00127     double m_xPosSigma;  // sigma of x position of muc track vertex in first gap local coordinate.
00128     double m_yPosSigma;  // sigma of y ...
00129     double m_zPosSigma;  // sigma of z ...   ... so it' 0;
00130     
00131     double m_px;         // px on muc track vertex
00132     double m_py;         // py on muc track vertex
00133     double m_pz;         // pz on muc track vertex
00134   
00135     double m_distance;
00136     double m_deltaPhi;
00137     
00138     vector<int> m_vecHits; 
00139 };
00140 
00141 typedef ObjectVector<DstMucTrack> DstMucTrackCol;
00142 #endif //NDST_DstMucTrack_H
00143 

Generated on Wed Feb 2 15:41:32 2011 for BOSS6.5.5 by  doxygen 1.3.9.1