/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Reconstruction/KalFitAlg/KalFitAlg-00-07-55-p03/KalFitAlg/KalFitHelixSeg.h

Go to the documentation of this file.
00001 #ifndef _DEFINE_HELIXSEG_H_
00002 #define _DEFINE_HELIXSEG_H_
00003 
00004 //#include "TrackUtil/Helix.h"
00005 #include "KalFitAlg/helix/Helix.h"
00006 #include "KalFitAlg/KalFitHitMdc.h"
00007 #include "CLHEP/Matrix/Vector.h"
00008 #include "CLHEP/Matrix/Matrix.h"
00009 #include "CLHEP/Matrix/SymMatrix.h"
00010 
00011 using namespace CLHEP;
00012 
00013 using namespace KalmanFit;
00014 
00015 
00016 class KalFitHelixSeg: public Helix {
00017 
00018 public:
00019 
00020 //KalFitHelixSeg(void);
00021 
00022 KalFitHelixSeg(KalFitHitMdc* hit,HepPoint3D pivot,HepVector a,HepSymMatrix Ea);
00023 
00024 ~KalFitHelixSeg(void) {};
00025 
00026 KalFitHitMdc*  HitMdc(void) { return hitmdc_;}
00027 double residual_exclude(void) { return residual_exclude_;}
00028 double residual_include(void) { return residual_include_;}
00029 double doca_exclude(void) { return doca_exclude_;} 
00030 double doca_include(void) { return doca_include_;}
00031 double tof(void) { return tof_;}
00032 double dt(void)  { return dt_;} 
00033 double dd(void)  { return dd_;}
00034 int LR(void) {return lr_;}
00035 
00036 void residual_exclude(double res) { residual_exclude_ = res;}
00037 void residual_include(double res) { residual_include_ = res;}
00038 void doca_exclude(double doca) { doca_exclude_ = doca;}
00039 void doca_include(double doca) { doca_include_ = doca;}
00040 void tof(double time) { tof_ = time;}
00041 void dt(double drifttime)  { dt_ = drifttime; }
00042 void dd(double driftdist) {dd_ = driftdist; }
00043 void LR(int lr) {lr_ = lr;}
00044 
00045 CLHEP::HepVector a_pre_fwd (void) { return a_pre_fwd_; }
00046 CLHEP::HepVector a_pre_bwd (void) { return a_pre_bwd_; }
00047 CLHEP::HepVector a_filt_fwd(void) { return a_filt_fwd_;}
00048 CLHEP::HepVector a_filt_bwd(void) { return a_filt_bwd_;}
00049 CLHEP::HepVector a_include (void) { return a_include_; }
00050 CLHEP::HepVector a_exclude (void) { return a_exclude_; }
00051 
00052 
00053 CLHEP::HepSymMatrix& Ea_pre_fwd(void)   { return Ea_pre_fwd_; }
00054 CLHEP::HepSymMatrix Ea_filt_fwd(void)   { return Ea_filt_fwd_;}
00055 CLHEP::HepSymMatrix Ea_pre_bwd (void)   { return Ea_pre_bwd_; }
00056 CLHEP::HepSymMatrix Ea_filt_bwd(void)   { return Ea_filt_bwd_;}
00057 CLHEP::HepSymMatrix Ea_include (void)   { return Ea_include_; }
00058 CLHEP::HepSymMatrix Ea_exclude (void)   { return Ea_exclude_; }
00059 
00060 
00061 void a_pre_fwd (CLHEP::HepVector a) { a_pre_fwd_  = a; }
00062 void a_pre_bwd (CLHEP::HepVector a) { a_pre_bwd_  = a; }
00063 void a_filt_fwd(CLHEP::HepVector a) { a_filt_fwd_ = a; }
00064 void a_filt_bwd(CLHEP::HepVector a) { a_filt_bwd_ = a; }
00065 void a_include (CLHEP::HepVector a) { a_include_  = a; }
00066 void a_exclude (CLHEP::HepVector a) { a_exclude_  = a; }
00067 
00068 
00069 void Ea_filt_fwd(CLHEP::HepSymMatrix Ea)   { Ea_filt_fwd_ = Ea; }
00070 void Ea_filt_bwd(CLHEP::HepSymMatrix Ea)   { Ea_filt_bwd_ = Ea; }
00071 void Ea_pre_bwd (CLHEP::HepSymMatrix Ea)   { Ea_pre_bwd_  = Ea; }
00072 void Ea_pre_fwd (CLHEP::HepSymMatrix Ea)   { Ea_pre_fwd_  = Ea; }
00073 void Ea_include (CLHEP::HepSymMatrix Ea)   { Ea_include_  = Ea; }
00074 void Ea_exclude (CLHEP::HepSymMatrix Ea)   { Ea_exclude_  = Ea; }
00075 
00076 
00077 int layer(void) {return (*hitmdc_).wire().layer().layerId();}
00078 
00079 
00080 
00081 private:
00082 KalFitHitMdc*  hitmdc_;
00083 CLHEP::HepVector a_pre_fwd_;
00084 CLHEP::HepVector a_pre_bwd_;
00085 CLHEP::HepVector a_filt_fwd_;
00086 CLHEP::HepVector a_filt_bwd_;
00087 CLHEP::HepVector a_include_;
00088 CLHEP::HepVector a_exclude_;
00089 
00090 CLHEP::HepSymMatrix Ea_pre_fwd_;
00091 CLHEP::HepSymMatrix Ea_filt_fwd_;
00092 CLHEP::HepSymMatrix Ea_pre_bwd_;
00093 CLHEP::HepSymMatrix Ea_filt_bwd_;
00094 CLHEP::HepSymMatrix Ea_include_;
00095 CLHEP::HepSymMatrix Ea_exclude_;
00096 
00097 int lr_;
00098 double residual_exclude_;
00099 double residual_include_;
00100 double doca_exclude_;
00101 double doca_include_;
00102 double  tof_;
00103 double  dt_;
00104 double  dd_;
00105 
00106 };
00107 
00108 #endif

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