EnTT 3.13.0
Loading...
Searching...
No Matches
Public Types | Static Public Member Functions | List of all members
entt::basic_collector< matcher< type_list< Reject... >, type_list< Require... >, Rule... >, Other... > Struct Template Reference

Collector. More...

#include <observer.hpp>

Public Types

using current_type = matcher< type_list< Reject... >, type_list< Require... >, Rule... >
 Current matcher.
 

Static Public Member Functions

template<typename... AllOf, typename... NoneOf>
static constexpr auto group (exclude_t< NoneOf... >=exclude_t{}) noexcept
 Adds a grouping matcher to the collector.
 
template<typename AnyOf >
static constexpr auto update () noexcept
 Adds an observing matcher to the collector.
 
template<typename... AllOf, typename... NoneOf>
static constexpr auto where (exclude_t< NoneOf... >=exclude_t{}) noexcept
 Updates the filter of the last added matcher.
 

Detailed Description

template<typename... Reject, typename... Require, typename... Rule, typename... Other>
struct entt::basic_collector< matcher< type_list< Reject... >, type_list< Require... >, Rule... >, Other... >

Collector.

A collector contains a set of rules (literally, matchers) to use to track entities.
Its main purpose is to generate a descriptor that allows an observer to know how to connect to a registry.

Template Parameters
RejectUntracked types used to filter out entities.
RequireUntracked types required by the matcher.
RuleSpecific details of the current matcher.
OtherOther matchers.

Definition at line 70 of file observer.hpp.

Member Typedef Documentation

◆ current_type

template<typename... Reject, typename... Require, typename... Rule, typename... Other>
using entt::basic_collector< matcher< type_list< Reject... >, type_list< Require... >, Rule... >, Other... >::current_type = matcher<type_list<Reject...>, type_list<Require...>, Rule...>

Current matcher.

Definition at line 72 of file observer.hpp.

Member Function Documentation

◆ group()

template<typename... Reject, typename... Require, typename... Rule, typename... Other>
template<typename... AllOf, typename... NoneOf>
static constexpr auto entt::basic_collector< matcher< type_list< Reject... >, type_list< Require... >, Rule... >, Other... >::group ( exclude_t< NoneOf... >  = exclude_t{})
inlinestaticconstexprnoexcept

Adds a grouping matcher to the collector.

Template Parameters
AllOfTypes of components tracked by the matcher.
NoneOfTypes of components used to filter out entities.
Returns
The updated collector.

Definition at line 81 of file observer.hpp.

◆ update()

template<typename... Reject, typename... Require, typename... Rule, typename... Other>
template<typename AnyOf >
static constexpr auto entt::basic_collector< matcher< type_list< Reject... >, type_list< Require... >, Rule... >, Other... >::update ( )
inlinestaticconstexprnoexcept

Adds an observing matcher to the collector.

Template Parameters
AnyOfType of component for which changes should be detected.
Returns
The updated collector.

Definition at line 91 of file observer.hpp.

◆ where()

template<typename... Reject, typename... Require, typename... Rule, typename... Other>
template<typename... AllOf, typename... NoneOf>
static constexpr auto entt::basic_collector< matcher< type_list< Reject... >, type_list< Require... >, Rule... >, Other... >::where ( exclude_t< NoneOf... >  = exclude_t{})
inlinestaticconstexprnoexcept

Updates the filter of the last added matcher.

Template Parameters
AllOfTypes of components required by the matcher.
NoneOfTypes of components used to filter out entities.
Returns
The updated collector.

Definition at line 102 of file observer.hpp.


The documentation for this struct was generated from the following file: