/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Reconstruction/MdcPatRec/TrkFitter/TrkFitter-00-01-11/TrkFitter/TrkBmSpotOnTrk.h

Go to the documentation of this file.
00001 //--------------------------------------------------------------------------
00002 // File and Version Information:
00003 //      $Id: TrkBmSpotOnTrk.h,v 1.1.1.1 2005/04/21 06:26:56 maqm Exp $
00004 //
00005 // Description:
00006 //   Defines interface between Svt hit and track, and stores information
00007 //       about fit.  Used by fitters
00008 // Environment:
00009 //      Software developed for the BaBar Detector at the SLAC B-Factory.
00010 //
00011 // Authors: Steve Schaffner
00012 //
00013 //      Copyright (C) 1996      Stanford Linear Accelerator Center
00014 //------------------------------------------------------------------------
00015 
00016 #ifndef TRKBMSPOTONTRK_H
00017 #define TRKBMSPOTONTRK_H
00018 
00019 #include "TrkBase/TrkHitOnTrk.h"
00020 #include "TrkBase/TrkEnums.h"
00021 #include "TrkBase/TrkLineTraj.h"
00022 
00023 #include "CLHEP/Geometry/Point3D.h"
00024 #include "CLHEP/Matrix/SymMatrix.h"
00025 
00026 
00027 // Class interface //
00028 class TrkBmSpotOnTrk : public TrkHitOnTrk 
00029 {
00030 public:
00031   TrkBmSpotOnTrk(const HepPoint3D &ip, const HepSymMatrix &size );
00032   ~TrkBmSpotOnTrk();
00033 
00034   TrkBmSpotOnTrk* clone(TrkRep*, const TrkDifTraj *t =0) const;
00035   virtual TrkEnums::TrkViewInfo whatView()     const;
00036   virtual unsigned layerNumber() const { return 0; }
00037 
00038   const Trajectory*   hitTraj() const;
00039   const HepPoint3D&     ip() const;
00040 
00041 // this hot has no timing information
00042   virtual bool timeResid(double& t,double& tErr) const { return false; }
00043   virtual bool timeAbsolute(double& t,double& tErr) const { return false; }
00044 
00045 protected:
00046   TrkBmSpotOnTrk(const TrkBmSpotOnTrk &hitToBeCopied,TrkRep *newRep, const TrkDifTraj *trkTraj=0);
00047   virtual TrkErrCode updateMeasurement(const TrkDifTraj* traj, bool maintainAmbiguity);
00048   
00049   static const TrkLineTraj FindBeamTrajectory( const HepPoint3D &point, const HepSymMatrix &error );
00050   double GetRms();
00051 
00052 private:
00053   // Make sure these aren't used by mistake:
00054   TrkBmSpotOnTrk&   operator= (const TrkBmSpotOnTrk&);
00055   TrkBmSpotOnTrk(const TrkBmSpotOnTrk&);
00056 
00057   const TrkLineTraj _beamTraj;
00058   const HepPoint3D _ip;
00059   const HepSymMatrix _size;
00060 };
00061 
00062 #endif

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