Sfoglia il codice sorgente

observer: configurable mask type

Michele Caini 3 anni fa
parent
commit
dd36328331
2 ha cambiato i file con 5 aggiunte e 4 eliminazioni
  1. 1 1
      src/entt/entity/fwd.hpp
  2. 4 3
      src/entt/entity/observer.hpp

+ 1 - 1
src/entt/entity/fwd.hpp

@@ -79,7 +79,7 @@ class basic_runtime_view;
 template<typename, typename, typename>
 template<typename, typename, typename>
 class basic_group;
 class basic_group;
 
 
-template<typename>
+template<typename, typename = std::uint32_t>
 class basic_observer;
 class basic_observer;
 
 
 template<typename>
 template<typename>

+ 4 - 3
src/entt/entity/observer.hpp

@@ -156,10 +156,11 @@ inline constexpr basic_collector<> collector{};
  * pointers.
  * pointers.
  *
  *
  * @tparam Registry Basic registry type.
  * @tparam Registry Basic registry type.
+ * @tparam Mask Mask type.
  */
  */
-template<typename Registry>
-class basic_observer: private basic_storage<std::uint32_t, typename Registry::entity_type> {
-    using base_type = basic_storage<std::uint32_t, typename Registry::entity_type>;
+template<typename Registry, typename Mask>
+class basic_observer: private basic_storage<Mask, typename Registry::entity_type> {
+    using base_type = basic_storage<Mask, typename Registry::entity_type>;
 
 
     template<typename>
     template<typename>
     struct matcher_handler;
     struct matcher_handler;