Class EventDispatcher

java.lang.Object
com.prineside.tdi2.events.EventDispatcher
All Implemented Interfaces:
KryoSerializable

public class EventDispatcher extends Object implements KryoSerializable
  • Field Details

  • Constructor Details

    • EventDispatcher

      public EventDispatcher()
  • Method Details

    • write

      public void write(Kryo kryo, Output output)
      Specified by:
      write in interface KryoSerializable
    • read

      public void read(Kryo kryo, Input input)
      Specified by:
      read in interface KryoSerializable
    • getListeners

      public <T extends Event> EventListeners<T> getListeners(Class<T> eventClass)
      New event listener group will be registered if not yet exists
    • queue

      public <T extends Event> void queue(T event)
      Use Pools.obtain(EventType.class) to create an event object. It will be freed back to the pool after trigger.
    • hasQueuedEvents

      public boolean hasQueuedEvents()
    • trigger

      public <T extends Event> T trigger(T event)
    • getClassToId

      public ObjectIntMap<Class<? extends Event>> getClassToId()
      Returns:
      registry of event type classes where value is an id / index in an array of listenerGroups
    • getListenerGroups

      public Array<EventListeners<?>> getListenerGroups()
      Returns:
      all of the registered EventListeners groups where index is a value from the classToId map
    • getQueuedEvents

      public Array<Event> getQueuedEvents()
      Returns:
      an array of queued events scheduled by queue() and are awaiting to be triggered by triggerQueuedEvents()
    • describe

      public StringBuilder describe()