00001 //-------------------------------------------------------------------------- 00002 // File and Version Information: 00003 // $Id: MdcHitUse.h,v 1.2 2011/09/26 00:55:50 zhangy Exp $ 00004 // 00005 // Description: 00006 // Minimal description of how a hit is to be used on a track; used for 00007 // adding hits to tracks. 00008 // 00009 // Environment: 00010 // Software developed for the BaBar Detector at the SLAC B-Factory. 00011 // 00012 // Author(s): Steve Schaffner 00013 // 00014 //------------------------------------------------------------------------ 00015 #ifndef MDCHITUSE_HH 00016 #define MDCHITUSE_HH 00017 00018 #include "TrkBase/TrkHitUse.h" 00019 #include "TrkBase/TrkHitOnTrkUpdater.h" 00020 00021 class MdcHit; 00022 00023 // Class interface // 00024 class MdcHitUse : public TrkHitUse, TrkHitOnTrkUpdater { 00025 00026 public: 00027 MdcHitUse(const MdcHit&, double fltLen, int ambig, 00028 bool active=true, int usable=1); 00029 virtual ~MdcHitUse(); 00030 virtual bool operator==(const TrkHitUse&) const; 00031 00032 int ambig() const {return _ambig;} 00033 virtual TrkHitOnTrk* createHitOnTrk(const TrkRep&) const; 00034 //virtual TrkHitOnTrk* createHitOnTrk(const TrkRep&, bool maintainAmbiguity=false) const;//2011-05-04 00035 00036 // Cast (safe) of base hit 00037 const MdcHit* mdcHit() const; 00038 00039 private: 00040 int _ambig; 00041 double _t0; 00042 00043 // Preempt 00044 MdcHitUse& operator= (const MdcHitUse&); 00045 MdcHitUse(const MdcHitUse &); 00046 }; 00047 00048 #endif