ComponentMatchingFamily

Undocumented in source.

Constructors

this
this(Engine engine_a)

The constructor. Creates a ComponentMatchingFamily to provide a NodeList for the given node class.

Members

Functions

cleanUp
void cleanUp()

Removes all nodes from the NodeList.

componentAddedToEntity
void componentAddedToEntity(Entity entity_a, ClassInfo class_a)

Called by the engine when a component has been added to an entity. We check if the entity is not in this family's NodeList and should be, and add it if appropriate.

componentRemovedFromEntity
void componentRemovedFromEntity(Entity entity_a, ClassInfo class_a)

Called by the engine when a component has been removed from an entity. We check if the removed component is required by this family's NodeList and if so, we check if the entity is in this this NodeList and remove it if so.

newEntity
void newEntity(Entity entity_a)

Called by the engine when an entity has been added to it. We check if the entity should be in this family's NodeList and add it if appropriate.

nodeList
NodeList nodeList()

The nodelist managed by this family. This is a reference that remains valid always since it is retained and reused by Systems that use the list. i.e. we never recreate the list, we always modify it in place.

removeEntity
void removeEntity(Entity entity_a)

Called by the engine when an entity has been removed from it. Check if the entity is in this family's NodeList and remove it if so.

resetNode
void resetNode(Node node_a)
Undocumented in source. Be warned that the author may not have intended to support it.

Inherited Members

From IFamily

nodeList
NodeList nodeList()

Returns the NodeList managed by this class. This should be a reference that remains valid always since it is retained and reused by Systems that use the list. i.e. never recreate the list, always modify it in place.

resetNode
void resetNode(Node node_a)

clean the node (reset component pointers)

newEntity
void newEntity(Entity entity_a)

An entity has been added to the engine. It may already have components so test the entity for inclusion in this family's NodeList.

removeEntity
void removeEntity(Entity entity_a)

An entity has been removed from the engine. If it's in this family's NodeList it should be removed.

componentAddedToEntity
void componentAddedToEntity(Entity entity_a, ClassInfo class_a)

A component has been added to an entity. Test whether the entity's inclusion in this family's NodeList should be modified.

componentRemovedFromEntity
void componentRemovedFromEntity(Entity entity_a, ClassInfo class_a)

A component has been removed from an entity. Test whether the entity's inclusion in this family's NodeList should be modified.

cleanUp
void cleanUp()

The family is about to be discarded. Clean up all properties as necessary. Usually, you will want to empty the NodeList at this time.

Meta