CORGI
An open source project by
FPL.
|
Namespace for CORGI library. More...
Classes | |
class | Component |
A Component is an object that encapsulates all data and logic for Entities of a particular type. More... | |
struct | ComponentIdLookup |
A templated struct for holding type-dependent data. More... | |
class | ComponentInterface |
An interface that provides basic Component functionality. All Components will inherit from this class. It provides the minimum set of things that are uniform across all Components (without needing to know the specific type of Component that it is). More... | |
class | Entity |
The basic Entity class for CORGI. It contains an array of index values, which are used by Components for tracking their data associated with an Entity. It also contains a boolean for tracking if this Entity has been marked for deletion. More... | |
class | EntityManager |
The EntityManager is the code that manages all Entities and Components in the game. Normally the game will instantiate EntityManager, and then use it to create and control all of its Entities. More... | |
class | EntityFactoryInterface |
An interface for an Entity factory, which creates Entities for a given EntityManager. More... | |
class | VectorPool |
A pool allocator, implemented as a vector-based pair of linked lists. More... | |
class | CameraInterface |
An interface for 3D cameras, allowing them to have position, facing field of view, etc. Libraries can use this to pass around generic cameras that the game itself can implement the logic for. More... | |
Typedefs | |
typedef VectorPool < corgi::Entity > ::VectorPoolReference | EntityRef |
A typedef that should be used as the primary way to reference an Entity. More... | |
typedef int | WorldTime |
A typedef that represents time in the game. | |
typedef uint16_t | ComponentIndex |
A ComponentIndex is a value used to represent the location of a piece of ComponentData, normally inside of a VectorPool. | |
typedef uint16_t | EntityIdType |
A EntityIdType is a value used to uniquely represent an entity in various internal structures. In general, CORGI users should avoid using this directly, and should instead refer to entities via EntityRefs. | |
typedef uint16_t | ComponentId |
This represents the ID of a Component. More... | |
Enumerations | |
enum | AllocationLocation { kAddToFront, kAddToBack } |
kAddToFront allocates from the front of the pool. kAddToBack allocates from the back of the pool. | |
Variables | |
const ComponentId | kInvalidComponent = static_cast<ComponentId>(-1) |
A sentinel value to represent an invalid Component. More... | |
static const ComponentIndex | kInvalidComponentIndex |
static const EntityIdType | kInvalidEntityId = static_cast<EntityIdType>(-1) |
A sentinel value to represent an invalid entity. More... | |
Namespace for CORGI library.