1
Fork 0
This repository has been archived on 2025-04-09. You can view files and clone it, but cannot push or open issues or pull requests.
awesome-attractor/Projector.hpp
2011-04-23 12:23:58 +02:00

40 lines
715 B
C++

#ifndef PROJECTOR_HPP
#define PROJECTOR_HPP
#include "stfu/stf.hpp"
class Canvas;
class Projector {
private:
void allocate();
void deallocate();
protected:
Projector* projector;
double* projectedPoint;
unsigned int inputDimension;
unsigned int outputDimension;
bool ready;
virtual void project(const double* point) = 0;
public:
// SHOULD NOT BE HERE
Canvas* canvas;
Projector(unsigned int inputDimension, unsigned int outputDimension);
virtual ~Projector();
// delegates forward trough the chain, know wha i'm sayin'?
void plot(const double* point);
// factory function
static Projector* createProjector(stfu::node& projector, unsigned int input_dimension);
};
#endif // PROJECTOR_HPP