51#ifndef GUM_APPROXIMATION_SCHEME_CONFIGURATION_H
52#define GUM_APPROXIMATION_SCHEME_CONFIGURATION_H
83 Signaler1< const std::string& >
onStop;
311 virtual const std::vector< double >&
history()
const = 0;
This file contains getters and setters definition for ApproximationScheme settings.
virtual bool isEnabledEpsilon() const =0
Returns true if stopping criterion on epsilon is enabled, false otherwise.
virtual double epsilon() const =0
Returns the value of epsilon.
virtual void disableEpsilon()=0
Disable stopping criterion on epsilon.
virtual void enableEpsilon()=0
Enable stopping criterion on epsilon.
virtual Size nbrIterations() const =0
Returns the number of iterations.
virtual ~IApproximationSchemeConfiguration()
Class destructor.
Signaler1< const std::string & > onStop
Criteria messageApproximationScheme.
IApproximationSchemeConfiguration()
Class constructors.
virtual void setMaxTime(double timeout)=0
Stopping criterion on timeout.
virtual const std::vector< double > & history() const =0
Returns the scheme history.
virtual Size periodSize() const =0
Returns the period size.
virtual void disableMinEpsilonRate()=0
Disable stopping criterion on epsilon rate.
virtual double currentTime() const =0
Returns the current running time in second.
virtual void setVerbosity(bool v)=0
Set the verbosity on (true) or off (false).
ApproximationSchemeSTATE
The different state of an approximation scheme.
virtual bool verbosity() const =0
Returns true if verbosity is enabled.
virtual ApproximationSchemeSTATE stateApproximationScheme() const =0
Returns the approximation scheme state.
virtual double minEpsilonRate() const =0
Returns the value of the minimal epsilon rate.
virtual void enableMaxIter()=0
Enable stopping criterion on max iterations.
virtual void disableMaxIter()=0
Disable stopping criterion on max iterations.
virtual void enableMinEpsilonRate()=0
Enable stopping criterion on epsilon rate.
virtual Size maxIter() const =0
Returns the criterion on number of iterations.
std::string messageApproximationScheme() const
Returns the approximation scheme message.
virtual void disableMaxTime()=0
Disable stopping criterion on timeout.
virtual bool isEnabledMaxIter() const =0
Returns true if stopping criterion on max iterations is enabled, false otherwise.
virtual bool isEnabledMinEpsilonRate() const =0
Returns true if stopping criterion on epsilon rate is enabled, false otherwise.
virtual double maxTime() const =0
Returns the timeout (in seconds).
virtual void setMinEpsilonRate(double rate)=0
Given that we approximate f(t), stopping criterion on d/dt(|f(t+1)-f(t)|).
virtual void setEpsilon(double eps)=0
Given that we approximate f(t), stopping criterion on |f(t+1)-f(t)|.
virtual void setPeriodSize(Size p)=0
How many samples between two stopping is enable.
virtual bool isEnabledMaxTime() const =0
Returns true if stopping criterion on timeout is enabled, false otherwise.
virtual void setMaxIter(Size max)=0
Stopping criterion on number of iterations.
virtual void enableMaxTime()=0
Enable stopping criterion on timeout.
Signaler3< Size, double, double > onProgress
Progression, error and time.
std::size_t Size
In aGrUM, hashed values are unsigned long int.
gum is the global namespace for all aGrUM entities
Class used to compute response times for benchmark purposes.