Interpolator.h

Go to the documentation of this file.
00001 
00002 
00008 /*
00009 */
00011 
00012 #ifndef __SSF_INTERPOLATOR_H__
00013 #define __SSF_INTERPOLATOR_H__
00014 #ifndef TRUE
00015 #define TRUE 1
00016 #define FALSE 0
00017 #endif 
00018 
00019 #include <Matrix.h>
00020 
00021 namespace O_SESSAME {
00022 
00024 
00052 class Interpolator
00053 {
00054 public:
00056     virtual ~Interpolator() { }
00057     
00069     virtual void Interpolate(const Vector& _timePoints, const Matrix& _dataPoints) = 0;
00070 
00077     virtual Vector Evaluate(const double& _inputPoint) = 0;
00083     virtual int GetNumberDataPoints() = 0;
00084 
00097     virtual Interpolator* NewPointer() = 0;
00098 
00111     virtual Interpolator* Clone() = 0;
00112     
00116     virtual bool GetValid() {return m_Valid;};
00117 
00118 protected:
00122     virtual void SetValid(const bool& _newValidValue) {m_Valid = _newValidValue;};
00123     
00128     Interpolator() : m_Valid(FALSE) { };
00129     
00130 private:
00132     bool m_Valid;
00133 };
00134 } // close namespace O_SESSAME
00135 
00136 #endif 
00137 
00138 
00139 // Do not change the comments below - they will be added automatically by CVS
00140 /*****************************************************************************
00141 *       $Log: Interpolator.h,v $
00142 *       Revision 1.3  2003/06/06 00:34:47  nilspace
00143 *       ?
00144 *       
00145 *       Revision 1.2  2003/05/15 16:05:44  nilspace
00146 *       Added a TRUE and FALSE define. Move to a math header file.
00147 *       
00148 *       Revision 1.1  2003/05/13 18:41:23  nilspace
00149 *       Initial submission.
00150 *       
00151 *
00152 ******************************************************************************/

Generated on Wed Aug 6 12:58:46 2003 for Open-Sessame Framework by doxygen1.3