derivator.h

00001 #ifndef DERIVATOR_H
00002 #define DERIVATOR_H
00003 
00004 #include "afltypes.h"
00005 
00006 namespace afl
00007 {
00008     class Field;
00013     class Derivator
00014     {
00015 
00017         public:
00021             virtual ~Derivator(  );
00028             virtual Derivative derivative( const Point& x ) const = 0;
00029 
00034             virtual void toXML( std::ostream& doc ) const = 0;
00035 
00040             virtual Derivator* clone(  ) = 0;
00041  
00045             const Point& getDeltas(  ) const { return _deltas; }
00046 
00050             virtual const std::string& getMethod(  ) const = 0;
00051 
00056             void setParentField( const Field* parent );
00057 
00058 
00060         protected:
00068             Derivator( const Field* field, const Parameters& params );
00069 
00071         protected:
00075             const Field* _field;
00076 
00080             Point _deltas;
00081 
00085             const ddf::PropertySet* _pset;
00086     };
00087 
00088 };
00089 
00090 #endif // DERIVATOR_H

Generated on Fri Dec 22 07:17:50 2006 for afl by  doxygen 1.4.6