StopConditionBase.h

00001 
00004 #ifndef _StopConditionBase_h
00005 #define _StopConditionBase_h
00006 
00007 // SYSTEM INCLUDES
00008 //
00009 
00010 // PROJECT INCLUDES
00011 //
00012 
00013 // LOCAL INCLUDES
00014 //
00015 #include "CountedPtr.h"
00016 #include "DoubleParameter.h"
00017 
00018 // FORWARD REFERENCES
00019 //
00020 class StopConditionBase;
00021 typedef vector< CountedPtr<StopConditionBase> > StopConditions;
00022 
00023 class StopConditionBase
00024 {
00025 public:
00026 // LIFECYCLE
00027 
00030     StopConditionBase(void);
00031 
00036     StopConditionBase(const StopConditionBase& from);
00037 
00038 
00041     virtual ~StopConditionBase(void);
00042 
00043 
00044 // OPERATORS
00045 
00046 // OPERATIONS
00047 
00050     virtual std::auto_ptr<StopConditionBase>    Clone() const = 0;
00051 
00052 // ACCESS
00053 
00056     virtual const wxString& Name() const;
00057 
00060     virtual wxString        ToString() const;
00061 
00064     virtual wxString& rName();
00065 
00068     virtual DoubleParameter         Epsilon() const = 0;
00069 
00072     virtual DoubleParameter&        rEpsilon() = 0;
00073 
00074 
00075 // INQUIRY
00076 
00082     static StopConditions   StandardStopConditions();
00083 
00092     static StopConditions   GradientStopConditions();
00093 
00097     static StopConditions   NelderMeadStopConditions();
00098 
00101     static StopConditions   EvolutionaryMethodStopConditions();
00102 
00103 // PUBLIC MEMBERS
00104 
00105 protected:
00106     wxString mName;
00107 private:
00108 };
00109 
00110 // INLINE METHODS
00111 //
00112 
00113 // EXTERNAL REFERENCES
00114 //
00115 
00116 #endif  // _StopConditionBase_h

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