Easys
A minimalist, header-only C++ ECS library for efficient and fuss-free entity and component management.
Loading...
Searching...
No Matches
Namespaces | Classes | Concepts | Typedefs | Functions | Variables
Easys Namespace Reference

Namespaces

namespace  log
 

Classes

class  ECS
 Manages entities and components in an Entity-Component-System architecture. More...
 
class  KeyNotFoundException
 
class  Registry
 
class  SparseSet
 
class  View
 A lightweight, read-only snapshot of a set of entities. More...
 

Concepts

concept  UnsignedIntegral
 

Typedefs

using Entity = EASYS_ENTITY_TYPE
 

Functions

template<typename... Ts>
void checkComponentTraits (bool verbose=false)
 Validates component types for ECS (Entity Component System) compatibility and performance.
 

Variables

const Entity MAX_ENTITIES = EASYS_ENTITY_LIMIT
 

Typedef Documentation

◆ Entity

Function Documentation

◆ checkComponentTraits()

template<typename... Ts>
void Easys::checkComponentTraits ( bool  verbose = false)

Validates component types for ECS (Entity Component System) compatibility and performance.

Analyzes compile-time traits of all components Ts. When verbose, shows detailed type traits; otherwise shows only size, alignment, and optimization status.

Critical checks:

  • Trivially copyable (memcpy moves between archetypes)
  • Trivially destructible (batch destruction)
  • Standard layout (predictable memory layout)
  • Reasonable size/alignment (cache efficiency)
Template Parameters
TsComponent types to validate
Parameters
verboseEnable detailed diagnostic output

Variable Documentation

◆ MAX_ENTITIES

const Entity Easys::MAX_ENTITIES = EASYS_ENTITY_LIMIT