NRE_EventEmitter.hpp
Go to the documentation of this file.
1 
10  #pragma once
11 
13 
18  namespace NRE {
23  namespace Event {
24 
29  template <class T>
31  public : // Methods
32  //## Constructor ##//
36  EventEmitter() = default;
37 
38  //## Copy Constructor ##//
43  EventEmitter(EventEmitter const& e) = default;
44 
45  //## Move Constructor ##//
50  EventEmitter(EventEmitter && e) = default;
51 
52  //## Deconstructor ##//
56  ~EventEmitter() = default;
57 
58  //## Methods ##//
64  template <class ... Args>
65  bool emit(Args && ... args);
66 
67  //## Assignment Operator ##//
73  EventEmitter& operator =(EventEmitter const& e) = default;
79  EventEmitter& operator =(EventEmitter && e) = default;
80 
81  public : // Static
85  static Category getCategory();
86  };
87  }
88  }
89 
90  #include "NRE_EventEmitter.tpp"
EventEmitter & operator=(EventEmitter const &e)=default
Manage event emission to all listener.
Definition: NRE_EventEmitter.hpp:30
static Category getCategory()
Event&#39;s API.
bool emit(Args &&...args)
The NearlyRealEngine&#39;s global namespace.
std::size_t Category
Definition: NRE_AbstractEventEmitter.hpp:32
Declaration of Event&#39;s API&#39;s Object : AbstractEventEmitter.
Abstract class for specialized event emission.
Definition: NRE_AbstractEventEmitter.hpp:29