/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Calibration/CalibData/CalibData-00-01-18/CalibData/RangeBase.h

Go to the documentation of this file.
00001 // $Header: /bes/bes/BossCvs/Calibration/CalibData/CalibData/RangeBase.h,v 1.1.1.1 2005/10/17 06:13:32 maqm Exp $
00002 #ifndef CalibData_RangeBase_h
00003 #define CalibData_RangeBase_h
00004 namespace CalibData {
00005 
00006 
00011   class RangeBase {
00012 
00013   public:
00014     RangeBase() {}
00015     virtual ~RangeBase() {}
00016 
00019     virtual void update(RangeBase* ) {}
00020 
00021     // Only put in default impl. because not all derived classes need
00022     // to do this at all.  Don't force them to put in dummy definition.
00023     // Otherwise would be pure virtual, since derived classes which do
00024     // need this have to do it themselves.  
00025     // Might be better to do this with a factory pattern.
00026     virtual void makeNew(RangeBase** ) { }
00027     
00028   };
00029 
00036   class ValSig {
00037   public:
00038     ValSig(float val=-1, float sig=-1) : m_val(val), m_sig(sig) {} 
00039     ValSig(const ValSig& other) {m_val = other.m_val; m_sig = other.m_sig;}
00040     bool isDefined( ) const {return (m_sig >= 0.0); }
00041     float getVal() const {return m_val;}
00042     float getSig() const {return m_sig;}
00043 
00044     void setUndefined() {m_val= -1.0; m_sig = -1;}
00045     float m_val;
00046     float m_sig;
00047   };
00048 }
00049 #endif

Generated on Tue Nov 29 22:57:48 2016 for BOSS_7.0.2 by  doxygen 1.4.7