DerivativeLayer.h

00001 
00006 #ifndef _DerivativeLayer_h
00007 #define _DerivativeLayer_h
00008 
00009 // SYSTEM INCLUDES
00010 //
00011 
00012 // PROJECT INCLUDES
00013 //
00014 
00015 // LOCAL INCLUDES
00016 //
00017 #include "UnivariateResultLayer.h"
00018 
00019 // FORWARD REFERENCES
00020 //
00021 
00022 
00023 class DerivativeLayer
00024     : public UnivariateResultLayer
00025 {
00026 public:
00027 // LIFECYCLE
00028 
00031     DerivativeLayer(const PlotControl&       plotControl,
00032                        const Result&            result,
00033                        CountedPtr<PlotLayer>    cpFunctionLayer);
00034 
00037     DerivativeLayer(const DerivativeLayer& from);
00038 
00041     ~DerivativeLayer(void);
00042 
00043 
00044 // OPERATORS
00045 
00046 // OPERATIONS
00047 
00048     virtual void    Draw(wxDC& dc) const;
00049 
00050     static std::auto_ptr<ResultLayer>   Create(
00051                                 const PlotControl&      plotControl,
00052                                 const Result&           result,
00053                                 CountedPtr<PlotLayer>   cpFunctionLayer);
00054 
00055 // ACCESS
00056 
00057     virtual Region  IterationBoundingBox(unsigned iterationNumber) const;
00058 
00059 // INQUIRY
00060 
00061 protected:
00062 
00063     void            DrawIteration(wxDC&             dc,
00064                                   unsigned          iterationNumber,
00065                                   bool              highlight) const;
00066 
00067 
00068     void            DrawActiveIterationBackground(wxDC& dc) const;
00069 private:
00070 
00071     static const void*  mRegistrationDummy;
00072 };
00073 
00074 // INLINE METHODS
00075 //
00076 
00077 // EXTERNAL REFERENCES
00078 //
00079 
00080 #endif  // _DerivativeLayer_h

Wygenerowano Fri Sep 29 21:04:48 2006 dla EduOptim2 programem  doxygen 1.4.6