Table of Contents

Class EcsContainer

Namespace
ReFuel.Ecs
Assembly
ReFuel.dll
public abstract class EcsContainer : EcsNode, IDisposable, IEnumerable<EcsNode>, IEnumerable
Inheritance
EcsContainer
Implements
Derived
Inherited Members

Constructors

EcsContainer()

public EcsContainer()

Properties

ChildrenCount

The number of immediate childrenList.

public abstract int ChildrenCount { get; }

Property Value

int

DescendentCount

The number of childrenList and their descendents.

public int DescendentCount { get; }

Property Value

int

Kind

public override EcsNodeKind Kind { get; }

Property Value

EcsNodeKind

Methods

Adopt(EcsNode)

public abstract void Adopt(EcsNode child)

Parameters

child EcsNode

CreateNamed<Tnode>(string)

Create a child entity on this node.

public Tnode CreateNamed<Tnode>(string name) where Tnode : EcsNode, new()

Parameters

name string

Name of the entity to create.

Returns

Tnode

Entity instance.

Type Parameters

Tnode

Type of entity to create.

CreateNamed<Tnode>(string, params object[])

Create a child entity on this node.

public Tnode CreateNamed<Tnode>(string name, params object[] args) where Tnode : EcsNode, IInitializerVariadic, new()

Parameters

name string

Name of the entity to create.

args object[]

Constructor arguments for entity.

Returns

Tnode

Entity instance.

Type Parameters

Tnode

Type of entity to create.

CreateNamed<Tnode, T1>(string, T1)

Create a child entity on this node.

public Tnode CreateNamed<Tnode, T1>(string name, T1 t1) where Tnode : EcsNode, IInitializer<T1>, new()

Parameters

name string

Name of the entity to create.

t1 T1

1st initializer parameter.

Returns

Tnode

Entity instance.

Type Parameters

Tnode

Type of entity to create.

T1

Parameter Type.

CreateNamed<Tnode, T1, T2>(string, T1, T2)

Create a child entity on this node.

public Tnode CreateNamed<Tnode, T1, T2>(string name, T1 t1, T2 t2) where Tnode : EcsNode, IInitializer<T1, T2>, new()

Parameters

name string

Name of the entity to create.

t1 T1

1st initializer parameter.

t2 T2

2nd initializer parameter.

Returns

Tnode

Entity instance.

Type Parameters

Tnode

Type of entity to create.

T1

Parameter Type.

T2

Parameter Type.

CreateNamed<Tnode, T1, T2, T3>(string, T1, T2, T3)

Create a child entity on this node.

public Tnode CreateNamed<Tnode, T1, T2, T3>(string name, T1 t1, T2 t2, T3 t3) where Tnode : EcsNode, IInitializer<T1, T2, T3>, new()

Parameters

name string

Name of the entity to create.

t1 T1

1st initializer parameter.

t2 T2

2nd initializer parameter.

t3 T3

3rd initializer parameter.

Returns

Tnode

Entity instance.

Type Parameters

Tnode

Type of entity to create.

T1

Parameter Type.

T2

Parameter Type.

T3

Parameter Type.

CreateNamed<Tnode, T1, T2, T3, T4>(string, T1, T2, T3, T4)

Create a child entity on this node.

public Tnode CreateNamed<Tnode, T1, T2, T3, T4>(string name, T1 t1, T2 t2, T3 t3, T4 t4) where Tnode : EcsNode, IInitializer<T1, T2, T3, T4>, new()

Parameters

name string

Name of the entity to create.

t1 T1

1st initializer parameter.

t2 T2

2nd initializer parameter.

t3 T3

3rd initializer parameter.

t4 T4

4th initializer parameter.

Returns

Tnode

Entity instance.

Type Parameters

Tnode

Type of entity to create.

T1

Parameter Type.

T2

Parameter Type.

T3

Parameter Type.

T4

Parameter Type.

CreateNamed<Tnode, T1, T2, T3, T4, T5>(string, T1, T2, T3, T4, T5)

Create a child entity on this node.

public Tnode CreateNamed<Tnode, T1, T2, T3, T4, T5>(string name, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5) where Tnode : EcsNode, IInitializer<T1, T2, T3, T4, T5>, new()

Parameters

name string

Name of the entity to create.

t1 T1

1st initializer parameter.

t2 T2

2nd initializer parameter.

t3 T3

3rd initializer parameter.

t4 T4

4th initializer parameter.

t5 T5

5th initializer parameter.

Returns

Tnode

Entity instance.

Type Parameters

Tnode

Type of entity to create.

T1

Parameter Type.

T2

Parameter Type.

T3

Parameter Type.

T4

Parameter Type.

T5

Parameter Type.

CreateNamed<Tnode, T1, T2, T3, T4, T5, T6>(string, T1, T2, T3, T4, T5, T6)

Create a child entity on this node.

public Tnode CreateNamed<Tnode, T1, T2, T3, T4, T5, T6>(string name, T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6) where Tnode : EcsNode, IInitializer<T1, T2, T3, T4, T5, T6>, new()

Parameters

name string

Name of the entity to create.

t1 T1

1st initializer parameter.

t2 T2

2nd initializer parameter.

t3 T3

3rd initializer parameter.

t4 T4

4th initializer parameter.

t5 T5

5th initializer parameter.

t6 T6

6th initializer parameter.

Returns

Tnode

Entity instance.

Type Parameters

Tnode

Type of entity to create.

T1

Parameter Type.

T2

Parameter Type.

T3

Parameter Type.

T4

Parameter Type.

T5

Parameter Type.

T6

Parameter Type.

Create<Tnode>()

Create a child entity on this node.

public Tnode Create<Tnode>() where Tnode : EcsNode, new()

Returns

Tnode

Entity instance.

Type Parameters

Tnode

CompressionType of entity to create.

Create<Tnode>(params object[])

Create a child entity on this node.

public Tnode Create<Tnode>(params object[] args) where Tnode : EcsNode, IInitializerVariadic, new()

Parameters

args object[]

Constructor arguments for entity.

Returns

Tnode

Entity instance.

Type Parameters

Tnode

CompressionType of entity to create.

Create<Tnode, T1>(T1)

Create a child entity on this node.

public Tnode Create<Tnode, T1>(T1 t1) where Tnode : EcsNode, IInitializer<T1>, new()

Parameters

t1 T1

1st initializer parameter.

Returns

Tnode

Entity instance.

Type Parameters

Tnode

Type of entity to create.

T1

Parameter Type.

Create<Tnode, T1, T2>(T1, T2)

Create a child entity on this node.

public Tnode Create<Tnode, T1, T2>(T1 t1, T2 t2) where Tnode : EcsNode, IInitializer<T1, T2>, new()

Parameters

t1 T1

1st initializer parameter.

t2 T2

2nd initializer parameter.

Returns

Tnode

Entity instance.

Type Parameters

Tnode

Type of entity to create.

T1

Parameter Type.

T2

Parameter Type.

Create<Tnode, T1, T2, T3>(T1, T2, T3)

Create a child entity on this node.

public Tnode Create<Tnode, T1, T2, T3>(T1 t1, T2 t2, T3 t3) where Tnode : EcsNode, IInitializer<T1, T2, T3>, new()

Parameters

t1 T1

1st initializer parameter.

t2 T2

2nd initializer parameter.

t3 T3

3rd initializer parameter.

Returns

Tnode

Entity instance.

Type Parameters

Tnode

Type of entity to create.

T1

Parameter Type.

T2

Parameter Type.

T3

Parameter Type.

Create<Tnode, T1, T2, T3, T4>(T1, T2, T3, T4)

Create a child entity on this node.

public Tnode Create<Tnode, T1, T2, T3, T4>(T1 t1, T2 t2, T3 t3, T4 t4) where Tnode : EcsNode, IInitializer<T1, T2, T3, T4>, new()

Parameters

t1 T1

1st initializer parameter.

t2 T2

2nd initializer parameter.

t3 T3

3rd initializer parameter.

t4 T4

4th initializer parameter.

Returns

Tnode

Entity instance.

Type Parameters

Tnode

Type of entity to create.

T1

Parameter Type.

T2

Parameter Type.

T3

Parameter Type.

T4

Parameter Type.

Create<Tnode, T1, T2, T3, T4, T5>(T1, T2, T3, T4, T5)

Create a child entity on this node.

public Tnode Create<Tnode, T1, T2, T3, T4, T5>(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5) where Tnode : EcsNode, IInitializer<T1, T2, T3, T4, T5>, new()

Parameters

t1 T1

1st initializer parameter.

t2 T2

2nd initializer parameter.

t3 T3

3rd initializer parameter.

t4 T4

4th initializer parameter.

t5 T5

5th initializer parameter.

Returns

Tnode

Entity instance.

Type Parameters

Tnode

Type of entity to create.

T1

Parameter Type.

T2

Parameter Type.

T3

Parameter Type.

T4

Parameter Type.

T5

Parameter Type.

Create<Tnode, T1, T2, T3, T4, T5, T6>(T1, T2, T3, T4, T5, T6)

Create a child entity on this node.

public Tnode Create<Tnode, T1, T2, T3, T4, T5, T6>(T1 t1, T2 t2, T3 t3, T4 t4, T5 t5, T6 t6) where Tnode : EcsNode, IInitializer<T1, T2, T3, T4, T5, T6>, new()

Parameters

t1 T1

1st initializer parameter.

t2 T2

2nd initializer parameter.

t3 T3

3rd initializer parameter.

t4 T4

4th initializer parameter.

t5 T5

5th initializer parameter.

t6 T6

6th initializer parameter.

Returns

Tnode

Entity instance.

Type Parameters

Tnode

Type of entity to create.

T1

Parameter Type.

T2

Parameter Type.

T3

Parameter Type.

T4

Parameter Type.

T5

Parameter Type.

T6

Disown(EcsNode)

public abstract void Disown(EcsNode child)

Parameters

child EcsNode

GetEnumerator()

Returns an enumerator that iterates through the collection.

public abstract IEnumerator<EcsNode> GetEnumerator()

Returns

IEnumerator<EcsNode>

An enumerator that can be used to iterate through the collection.

NotifyChildAdopted(EcsNode?, ChildAdoptedNotification)

protected abstract void NotifyChildAdopted(EcsNode? child, ChildAdoptedNotification details)

Parameters

child EcsNode
details ChildAdoptedNotification

NotifyChildIdChanged(EcsNode?, IdChangedNotification)

protected abstract void NotifyChildIdChanged(EcsNode? child, IdChangedNotification details)

Parameters

child EcsNode
details IdChangedNotification