59 lines
925 B
TypeScript
59 lines
925 B
TypeScript
|
/// <reference path="../PathAnimator.ts" />
|
||
|
/// <reference path="../PAImage.ts" />
|
||
|
|
||
|
/**
|
||
|
* Base class for the algorithms
|
||
|
*/
|
||
|
class Algorithm {
|
||
|
/**
|
||
|
* Main instance
|
||
|
*/
|
||
|
protected callback: PathAnimator;
|
||
|
/**
|
||
|
* Input image
|
||
|
*/
|
||
|
protected input: PAImage;
|
||
|
/**
|
||
|
* Output image
|
||
|
*/
|
||
|
protected output: PAImage;
|
||
|
|
||
|
/**
|
||
|
* Constructor
|
||
|
*/
|
||
|
constructor() {
|
||
|
this.callback = null;
|
||
|
this.output = null;
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Set the callback instance
|
||
|
* @param callback The main PathAnimator instance
|
||
|
*/
|
||
|
setCallback(callback: PathAnimator) {
|
||
|
this.callback = callback;
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Set the input image
|
||
|
* @param image Input image
|
||
|
*/
|
||
|
setInput(image: PAImage) {
|
||
|
this.input = image;
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Set the output image
|
||
|
* @param image Output image
|
||
|
*/
|
||
|
setOutput(image: PAImage) {
|
||
|
this.output = image;
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Dummy run function, must be overloaded
|
||
|
*/
|
||
|
run() {
|
||
|
}
|
||
|
}
|