You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
995 B
35 lines
995 B
#ifndef ATTRACTORKERNEL_HPP
|
|
#define ATTRACTORKERNEL_HPP
|
|
|
|
#include <string>
|
|
using namespace std;
|
|
|
|
class AttractorKernel {
|
|
public:
|
|
|
|
// AttractorKernel protocol
|
|
|
|
// parameters are stored in a array of doubles
|
|
// if you want to use other types, use the properties
|
|
virtual double& parameter(const unsigned int index) = 0;
|
|
virtual double*& parameters() = 0;
|
|
|
|
virtual unsigned int getNumberOfParameters() = 0;
|
|
|
|
// get properties of the attractor
|
|
// such as the dimension
|
|
// you should delete the void pointer if you used it
|
|
virtual void * getProperty(const string identifier) = 0;
|
|
virtual void setProperty(const string identifier, const void * value) = 0;
|
|
|
|
// iterate his formula
|
|
// vector pointers will be swapped! so new remains new and old remains old
|
|
virtual void iterate() = 0;
|
|
|
|
// getter functions for teh resulta
|
|
virtual double * & vector() = 0;
|
|
virtual double * & previousVector() = 0;
|
|
};
|
|
|
|
#endif // ATTRACTORKERNEL_HPP
|
|
|
|
|