final case class Reactor[A](initial: A, onMouseClickHandler: (Point, A) => A, onMouseMoveHandler: (Point, A) => A, onTickHandler: A => A, tickRate: FiniteDuration, renderHandler: A => Image, stopHandler: A => Boolean) extends BaseReactor[A]
A Reactor that has reasonable defaults and a simple builder style for creating more complicated behaviour.
- Companion:
- object
Value members
Concrete methods
def draw[Alg <: ([x[_]] =>> Basic[x]), F[_], Frame, Canvas](frame: Frame)(implicit renderer: Renderer[Alg, F, Frame, Canvas], runtime: IORuntime): Unit
def draw[Alg <: ([x[_]] =>> Basic[x]), F[_], Frame, Canvas]()(implicit renderer: DefaultRenderer[Alg, F, Frame, Canvas], runtime: IORuntime): Unit
Inherited methods
def run[Alg <: ([x[_]] =>> Basic[x]), F[_], Frame, Canvas](frame: Frame)(implicit a: AnimationRenderer[Canvas], e: Renderer[Alg, F, Frame, Canvas], m: MouseClick[Canvas] & MouseMove[Canvas], runtime: IORuntime): Unit
Runs this reactor, drawing on the given frame, until stop indicates it
should stop.
Runs this reactor, drawing on the given frame, until stop indicates it
should stop.
- Inherited from:
- BaseReactor
def tick[F[_], Frame, Canvas](frame: Frame)(implicit e: Renderer[[F[_]] =>> Basic[F], F, Frame, Canvas], runtime: IORuntime): Option[A]
Run one tick of this reactor, drawing on the given frame. Returns the
next state, or None if the Reactor has stopped.
Run one tick of this reactor, drawing on the given frame. Returns the
next state, or None if the Reactor has stopped.
- Inherited from:
- BaseReactor