
abstract class Animation {
  private boolean enabled;

  public Animation() {
    enabled = true;
  }

  public void setEnabled( boolean enabled ) {
    this.enabled = enabled;
  }

  public void reset() {
    // default - nothing to do
  }

  public void animate( double secs ) {
    if ( enabled )
      animateHook( secs );
  }

  protected abstract void animateHook( double secs );
}
