AbstractEffect

abstract class AbstractEffect<P : Position2D<out P>?> : EffectFX<P>

It models an abstract implementation of the effect interface, implementing default name and visibility properties.

The effect behavior can be implemented via computeDrawCommands template method.

Parameters

<P>

the position type

Functions

Link copied to clipboard
@Contract(value = "null, null -> true; null, !null -> false; !null, null -> false")
open fun <T : AbstractEffect<out Any>?> checkBasicProperties(@Nullable anEffect: T, @Nullable otherEffect: Any): Boolean
The method compares two Effects to check basic properties of visibility, name and class.
Link copied to clipboard
@Contract(value = "null, !null -> false")
open fun <T, P : Property<T>?> checkEqualsProperties(@Nullable prop1: P, @Nullable prop2: P): Boolean
The method is useful to implement comparisons of properties in equals method.
Link copied to clipboard
open fun <T> computeDrawCommands(environment: Environment<T, P>): Queue<DrawCommand<P>>
Computes a queue of commands to Draw something.
Link copied to clipboard
abstract fun equals(obj: Any): Boolean
Link copied to clipboard
abstract fun hashCode(): Int
Link copied to clipboard
fun isVisible(): Boolean
Gets the visibility of the effect.
Link copied to clipboard
abstract fun setName(name: String)
Sets the name of the effect.
Link copied to clipboard
fun setVisibility(visibility: Boolean)
Sets the visibility of the effect.

Properties

Link copied to clipboard
open var name: String

Inheritors

Link copied to clipboard
Link copied to clipboard