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
- Source:
- Reactor.scala
Value members
Concrete methods
def draw[Alg <: Basic, F[_], Frame, Canvas]()(implicit renderer: DefaultRenderer[Alg, Frame, Canvas], runtime: IORuntime): Unit
- Source:
- Reactor.scala
Inherited methods
def run[Alg <: Basic, F[_], Frame, Canvas](frame: Frame)(implicit a: AnimationRenderer[Canvas], e: Renderer[Alg, 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
- Source:
- BaseReactor.scala
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
- Source:
- BaseReactor.scala