Function EventManager.emit

Emit an event.

It will be dispatched to all receivers that subscribed to it.

Prototypes

void emit(E)(
  in ref E event
)
if (isEvent!E);

void emit(E, Args...)(
  auto ref Args args
)
if (isEvent!E);

Example

@event struct MyEvent
{
    int data;
}

auto em = new EventManager;

auto e = MyEvent(43);

em.emit(e);
em.emit!MyEvent(42);

Authors

Claude Merle

Copyright

© 2015-2016 Claude Merle

License

This file is part of EntitySysD.

EntitySysD is free software: you can redistribute it and/or modify it under the terms of the Lesser GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

EntitySysD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the Lesser GNU General Public License for more details.

You should have received a copy of the Lesser GNU General Public License along with EntitySysD. If not, see http://www.gnu.org/licenses/.