Parcourir la source

dispatcher: reintroduced type_id for the internal pool

Michele Caini il y a 6 ans
Parent
commit
1e79f2441c
1 fichiers modifiés avec 5 ajouts et 0 suppressions
  1. 5 0
      src/entt/signal/dispatcher.hpp

+ 5 - 0
src/entt/signal/dispatcher.hpp

@@ -33,6 +33,7 @@ class dispatcher {
         virtual ~basic_pool() = default;
         virtual void publish() = 0;
         virtual void clear() ENTT_NOEXCEPT = 0;
+        virtual id_type type_id() const ENTT_NOEXCEPT = 0;
     };
 
     template<typename Event>
@@ -68,6 +69,10 @@ class dispatcher {
             events.emplace_back(std::forward<Args>(args)...);
         }
 
+        id_type type_id() const ENTT_NOEXCEPT override {
+            return type_info<Event>::id();
+        }
+
     private:
         signal_type signal{};
         std::vector<Event> events;