Entitas Redux
JCMG.EntitasRedux.Collector< TEntity > Class Template Reference

A Collector can observe one or more groups from the same context and collects changed entities based on the specified groupEvent. More...

Inheritance diagram for JCMG.EntitasRedux.Collector< TEntity >:
JCMG.EntitasRedux.ICollector< TEntity >

Public Member Functions

 Collector (IGroup< TEntity > group, GroupEvent groupEvent)
 Creates a Collector and will collect changed entities based on the specified groupEvent. More...
 
 Collector (IGroup< TEntity >[] groups, GroupEvent[] groupEvents)
 Creates a Collector and will collect changed entities based on the specified groupEvents. More...
 
override string ToString ()
 
void Activate ()
 Activates the Collector and will start collecting changed entities. Collectors are activated by default. More...
 
void Deactivate ()
 Deactivates the Collector. This will also clear all collected entities. Collectors are activated by default. More...
 
IEnumerable< TCast > GetCollectedEntities< TCast > ()
 Returns all collected entities and casts them. Call collector.ClearCollectedEntities() once you processed all entities. More...
 
void ClearCollectedEntities ()
 Clears all collected entities. More...
 

Public Attributes

HashSet< TEntity > CollectedEntities => _collectedEntities
 Returns all collected entities. Call collector.ClearCollectedEntities() once you processed all entities. More...
 
int Count => _collectedEntities.Count
 Returns the number of all collected entities. More...
 

Detailed Description

A Collector can observe one or more groups from the same context and collects changed entities based on the specified groupEvent.

Template Parameters
TEntity
Type Constraints
TEntity :class 
TEntity :IEntity 

Definition at line 37 of file Collector.cs.

Constructor & Destructor Documentation

◆ Collector() [1/2]

JCMG.EntitasRedux.Collector< TEntity >.Collector ( IGroup< TEntity >  group,
GroupEvent  groupEvent 
)

Creates a Collector and will collect changed entities based on the specified groupEvent.

Parameters
group
groupEvent

Definition at line 54 of file Collector.cs.

◆ Collector() [2/2]

JCMG.EntitasRedux.Collector< TEntity >.Collector ( IGroup< TEntity >[]  groups,
GroupEvent[]  groupEvents 
)

Creates a Collector and will collect changed entities based on the specified groupEvents.

Parameters
groups
groupEvents

Definition at line 72 of file Collector.cs.

Member Function Documentation

◆ Activate()

void JCMG.EntitasRedux.Collector< TEntity >.Activate ( )

Activates the Collector and will start collecting changed entities. Collectors are activated by default.

Definition at line 151 of file Collector.cs.

◆ ClearCollectedEntities()

void JCMG.EntitasRedux.Collector< TEntity >.ClearCollectedEntities ( )

Clears all collected entities.

Definition at line 210 of file Collector.cs.

◆ Deactivate()

void JCMG.EntitasRedux.Collector< TEntity >.Deactivate ( )

Deactivates the Collector. This will also clear all collected entities. Collectors are activated by default.

Definition at line 182 of file Collector.cs.

◆ GetCollectedEntities< TCast >()

IEnumerable<TCast> JCMG.EntitasRedux.Collector< TEntity >.GetCollectedEntities< TCast > ( )

Returns all collected entities and casts them. Call collector.ClearCollectedEntities() once you processed all entities.

Template Parameters
TCast
Returns
Type Constraints
TCast :class 
TCast :IEntity 

Definition at line 201 of file Collector.cs.

◆ ToString()

override string JCMG.EntitasRedux.Collector< TEntity >.ToString ( )

Definition at line 102 of file Collector.cs.

Member Data Documentation

◆ CollectedEntities

HashSet<TEntity> JCMG.EntitasRedux.Collector< TEntity >.CollectedEntities => _collectedEntities

Returns all collected entities. Call collector.ClearCollectedEntities() once you processed all entities.

Definition at line 142 of file Collector.cs.

◆ Count

int JCMG.EntitasRedux.Collector< TEntity >.Count => _collectedEntities.Count

Returns the number of all collected entities.

Definition at line 145 of file Collector.cs.


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