/// /// /** * 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() { } }