# CompositeEntityClass

constructor(table: IdTable<CompositeID>, entityType: Class<E>? = null, entityCtor: (EntityID<CompositeID>) -> E? = null)

#### Parameters

table

The IdTable object that stores rows mapped to entities of this class.

entityType

The expected CompositeEntity type. This can be left `null` if it is the class of type argument E provided to this CompositeEntityClass instance. If this `CompositeEntityClass` is defined as a companion object of a custom `CompositeEntity` class, the parameter will be set to this immediately enclosing class by default.

entityCtor

The function invoked to instantiate a CompositeEntity using a provided EntityID value. If a reference to a specific constructor or a custom function is not passed as an argument, reflection will be used to determine the primary constructor of the associated entity class on first access. If this `CompositeEntityClass` is defined as a companion object of a custom `CompositeEntity` class, the constructor will be set to that of the immediately enclosing class by default.