My old project for strange attractors
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.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.

36 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