Gaia-ECS v1.0.0
A simple and powerful entity component system
Loading...
Searching...
No Matches
gaia::mem::data_view_policy_aos_get< ValueType > Struct Template Reference

Read-only byte view over AoS values. More...

#include <data_layout_policy.h>

+ Inheritance diagram for gaia::mem::data_view_policy_aos_get< ValueType >:

Public Types

using view_policy = data_view_policy_aos< ValueType >
 Underlying storage policy.
 

Public Member Functions

 data_view_policy_aos_get (std::span< uint8_t > data)
 Creates a read-only view over mutable bytes.
 
 data_view_policy_aos_get (std::span< const uint8_t > data)
 Creates a read-only view over bytes.
 
template<typename C >
 data_view_policy_aos_get (const C &c)
 Creates a read-only view over a contiguous container.
 
GAIA_NODISCARD const ValueType & operator[] (size_t idx) const noexcept
 Returns a value by index.
 
GAIA_NODISCARD decltype(auto) data () const noexcept
 Returns the backing byte address.
 
GAIA_NODISCARD auto size () const noexcept
 Returns the backing span size.
 

Public Attributes

std::span< const uint8_t > m_data
 Raw data pointed to by the view policy.
 

Detailed Description

template<typename ValueType>
struct gaia::mem::data_view_policy_aos_get< ValueType >

Read-only byte view over AoS values.

Template Parameters
ValueTypeStored value type.

Constructor & Destructor Documentation

◆ data_view_policy_aos_get() [1/3]

template<typename ValueType >
gaia::mem::data_view_policy_aos_get< ValueType >::data_view_policy_aos_get ( std::span< uint8_t >  data)
inline

Creates a read-only view over mutable bytes.

Parameters
dataBacking byte span.

◆ data_view_policy_aos_get() [2/3]

template<typename ValueType >
gaia::mem::data_view_policy_aos_get< ValueType >::data_view_policy_aos_get ( std::span< const uint8_t >  data)
inline

Creates a read-only view over bytes.

Parameters
dataBacking byte span.

◆ data_view_policy_aos_get() [3/3]

template<typename ValueType >
template<typename C >
gaia::mem::data_view_policy_aos_get< ValueType >::data_view_policy_aos_get ( const C &  c)
inline

Creates a read-only view over a contiguous container.

Template Parameters
CContiguous container type.
Parameters
cBacking container.

Member Function Documentation

◆ data()

template<typename ValueType >
GAIA_NODISCARD decltype(auto) gaia::mem::data_view_policy_aos_get< ValueType >::data ( ) const
inlinenoexcept

Returns the backing byte address.

Returns
Read-only byte pointer.

◆ operator[]()

template<typename ValueType >
GAIA_NODISCARD const ValueType & gaia::mem::data_view_policy_aos_get< ValueType >::operator[] ( size_t  idx) const
inlinenoexcept

Returns a value by index.

Parameters
idxValue index.
Returns
Read-only reference to the value.

◆ size()

template<typename ValueType >
GAIA_NODISCARD auto gaia::mem::data_view_policy_aos_get< ValueType >::size ( ) const
inlinenoexcept

Returns the backing span size.

Returns
Span size in bytes.

The documentation for this struct was generated from the following file: