Component

High-level component management utilities.

Overview

Typical use cases:

  • Creating reusable components for renderer pipelines.

Header

<RaeptorCogs/Component.hpp>

Metadata

Author

Estorc

Version

v1.0

Copyright

Copyright (c) 2025 Estorc MIT License.

Classes

Classes

Class

Description

RaeptorCogs::Component

Base Component class.

RaeptorCogs::Component2D

2D Component class.

class Component : public RaeptorCogs::RegisterNode<Component, Node>

Base Component class.

Provides an interface for components that can be attached to nodes.

Typical use cases:

  • Creating reusable components for renderer pipelines.

class MyComponent : public RaeptorCogs::Component {
  // Custom component implementation
};

Subclassed by RaeptorCogs::RegisterNode< Component2D, Component >

Public Functions

Component() = default

Default constructor for Component.

virtual ~Component() = default

Virtual destructor for Component.

Ensures proper cleanup of derived classes.

void setRenderer(Singletons::Renderer *renderer)

Set the renderer for this component.

Parameters:

renderer – Pointer to the renderer.

Singletons::Renderer *getRenderer() const

Get the renderer for this component.

Returns:

Pointer to the renderer.

virtual void update(GAPI::Common::RenderPipeline &pipeline) = 0

Update the component.

This method is called to update the component’s state.

Private Members

Singletons::Renderer *renderer = nullptr

Pointer to the renderer.

Used for rendering operations.

class Component2D : public RaeptorCogs::RegisterNode<Component2D, Component>

2D Component class.

Provides an interface for 2D components that can be attached to nodes.

Typical use cases:

  • Creating reusable 2D components for game objects or entities

See also

Component

Subclassed by RaeptorCogs::Camera2D

Public Functions

Component2D() = default

Default constructor for Component2D.

virtual ~Component2D() = default

Virtual destructor for Component2D.

Ensures proper cleanup of derived classes.