Class CellRef<Event,State>

java.lang.Object
gov.nasa.jpl.aerie.merlin.framework.CellRef<Event,State>

public final class CellRef<Event,State> extends Object
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    final gov.nasa.jpl.aerie.merlin.protocol.driver.CellId<State>
     
    final gov.nasa.jpl.aerie.merlin.protocol.driver.Topic<Event>
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static <Effect, State>
    CellRef<Effect,State>
    allocate(State initialState, gov.nasa.jpl.aerie.merlin.protocol.model.CellType<Effect,State> cellType)
     
    static <Event, Effect, State>
    CellRef<Event,State>
    allocate(State initialState, gov.nasa.jpl.aerie.merlin.protocol.model.CellType<Effect,State> cellType, Function<Event,Effect> eventToEffect)
     
    static <Event, Effect, State>
    CellRef<Event,State>
    allocate(State initialState, gov.nasa.jpl.aerie.merlin.protocol.model.CellType<Effect,State> cellType, Function<Event,Effect> eventToEffect, gov.nasa.jpl.aerie.merlin.protocol.driver.Topic<Event> topic)
     
    void
    emit(Event event)
     
    get()
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • topic

      public final gov.nasa.jpl.aerie.merlin.protocol.driver.Topic<Event> topic
    • cellId

      public final gov.nasa.jpl.aerie.merlin.protocol.driver.CellId<State> cellId
  • Method Details

    • allocate

      public static <Event, Effect, State> CellRef<Event,State> allocate(State initialState, gov.nasa.jpl.aerie.merlin.protocol.model.CellType<Effect,State> cellType, Function<Event,Effect> eventToEffect, gov.nasa.jpl.aerie.merlin.protocol.driver.Topic<Event> topic)
    • allocate

      public static <Event, Effect, State> CellRef<Event,State> allocate(State initialState, gov.nasa.jpl.aerie.merlin.protocol.model.CellType<Effect,State> cellType, Function<Event,Effect> eventToEffect)
    • allocate

      public static <Effect, State> CellRef<Effect,State> allocate(State initialState, gov.nasa.jpl.aerie.merlin.protocol.model.CellType<Effect,State> cellType)
    • get

      public State get()
    • emit

      public void emit(Event event)