00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef MDCSEGINFOSTERO_HH
00021 #define MDCSEGINFOSTERO_HH
00022 #include "MdcTrkRecon/MdcSegInfo.h"
00023 #include "CLHEP/Geometry/Point3D.h"
00024 #ifndef ENABLE_BACKWARDS_COMPATIBILITY
00025
00026 typedef HepGeom::Point3D<double> HepPoint3D;
00027 #endif
00028
00029 class TrkRecoTrk;
00030 class TrkExchangePar;
00031 class MdcLine;
00032 class MdcHitUse;
00033
00034 class MdcSegInfoSterO : public MdcSegInfo {
00035
00036 public:
00037 MdcSegInfoSterO() { };
00038 ~MdcSegInfoSterO() { };
00039
00040 double z0() const {return _par0;}
00041 double ct() const {return _par1;}
00042 bool parIsAngle(int i) const;
00043
00044
00045 int calcStereo(MdcSeg *parentSeg, const TrkRecoTrk &track,
00046 MdcSegWorks &segStuff);
00047 int calcStereo(MdcSeg *parentSeg, const TrkExchangePar &par,
00048 MdcSegWorks &segStuff, double Bz);
00049
00050 int zPosition(MdcHitUse & hitUse,const TrkRecoTrk &track,MdcLine* span,int hitFit, double t0) const;
00051 int zPosition(MdcHitUse & hitUse, const TrkExchangePar &par, MdcLine* span,int hitFit, double t0, double Bz) const;
00052 private:
00053 MdcSegInfoSterO(const MdcSegInfoSterO &);
00054 MdcSegInfoSterO& operator= (const MdcSegInfoSterO&);
00055 int _debug;
00056 };
00057
00058
00059
00060 #endif
00061
00062
00063
00064
00065
00066
00067