Helios Engine
A modular ECS based data-oriented C++23 game engine framework
Loading...
Searching...
No Matches
helios::ecs::Res< T > Class Template Reference

Read-only or mutable access to resource. More...

#include <param.hpp>

Public Member Functions

constexpr Res (T &resource) noexcept
 Constructs a resource reference.
constexpr Res (const Res &) noexcept=default
constexpr Res (Res &&) noexcept=default
constexpr ~Res () noexcept=default
constexpr Resoperator= (const Res &) noexcept=default
constexpr Resoperator= (Res &&) noexcept=default
constexpr T * operator-> () noexcept
constexpr T & operator* () noexcept
constexpr const T * operator-> () const noexcept
constexpr const T & operator* () const noexcept

Detailed Description

template<ResourceTrait T>
class helios::ecs::Res< T >

Read-only or mutable access to resource.

Pointer-like interface for resource access. Use Res<const T> for read-only access and Res<T> for mutable access.

Template Parameters
TResource type

Definition at line 17 of file param.hpp.

Constructor & Destructor Documentation

◆ Res() [1/3]

template<ResourceTrait T>
helios::ecs::Res< T >::Res ( T & resource)
inlineexplicitconstexprnoexcept

Constructs a resource reference.

Parameters
resourceResource value

Definition at line 23 of file param.hpp.

◆ Res() [2/3]

template<ResourceTrait T>
helios::ecs::Res< T >::Res ( const Res< T > & )
constexprdefaultnoexcept

◆ Res() [3/3]

template<ResourceTrait T>
helios::ecs::Res< T >::Res ( Res< T > && )
constexprdefaultnoexcept

◆ ~Res()

template<ResourceTrait T>
helios::ecs::Res< T >::~Res ( )
constexprdefaultnoexcept

Member Function Documentation

◆ operator*() [1/2]

template<ResourceTrait T>
const T & helios::ecs::Res< T >::operator* ( ) const
inlinenodiscardconstexprnoexcept

Definition at line 38 of file param.hpp.

◆ operator*() [2/2]

template<ResourceTrait T>
T & helios::ecs::Res< T >::operator* ( )
inlinenodiscardconstexprnoexcept

Definition at line 32 of file param.hpp.

◆ operator->() [1/2]

template<ResourceTrait T>
const T * helios::ecs::Res< T >::operator-> ( ) const
inlinenodiscardconstexprnoexcept

Definition at line 34 of file param.hpp.

◆ operator->() [2/2]

template<ResourceTrait T>
T * helios::ecs::Res< T >::operator-> ( )
inlinenodiscardconstexprnoexcept

Definition at line 31 of file param.hpp.

◆ operator=() [1/2]

template<ResourceTrait T>
Res & helios::ecs::Res< T >::operator= ( const Res< T > & )
constexprdefaultnoexcept

◆ operator=() [2/2]

template<ResourceTrait T>
Res & helios::ecs::Res< T >::operator= ( Res< T > && )
constexprdefaultnoexcept