00001
00006 #ifndef _TivHookeJeeves_h
00007 #define _TivHookeJeeves_h
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #include "../methods/HookeJeevesIteration.h"
00018 #include "TextIterationVisualizer.h"
00019
00020
00021
00022
00023
00024 class TivHookeJeeves
00025 : public TextIterationVisualizer
00026 {
00027 public:
00028
00029
00032 TivHookeJeeves(void);
00033
00036 ~TivHookeJeeves(void);
00037
00038
00039
00040
00041
00042
00043 virtual void Print(wxTextCtrl* pTargetCtrl,
00044 const IterationData& iterationData,
00045 const FunctionBase& function,
00046 bool highlight) const;
00047
00048
00049
00050
00051 protected:
00052
00053 void PrintTrialSteps(wxTextCtrl* pTargetCtrl,
00054 const HookeJeevesIteration& iteration,
00055 const FunctionBase& function,
00056 bool highlight) const;
00057
00058 virtual wxString PrintTrialStep(const HookeJeevesIteration::TrialPoint& step,
00059 const FunctionBase& function) const = 0;
00060
00061 virtual void StepVector(
00062 wxTextCtrl* pTargetCtrl,
00063 wxString& rText,
00064 const HookeJeevesIteration& iteration,
00065 bool highlight) const = 0;
00066
00067 virtual wxString PrintTauContraction(
00068 const HookeJeevesIteration& iteration) const = 0;
00069
00070 private:
00074 static void* mpRegistrationDummy;
00075 };
00076
00077
00078
00079
00080
00081
00082
00083 #endif // _TivHookeJeeves_h