memlayout
Minimal CPU/GPU header-only example library
Loading...
Searching...
No Matches
memlayout::Wrapper< Struct, Container, Layout::soa > Struct Template Reference

#include <wrapper.h>

Inheritance diagram for memlayout::Wrapper< Struct, Container, Layout::soa >:

Public Types

using Base = Struct<Container>

Public Member Functions

constexpr Wrapper ()=default
constexpr Wrapper (Base b)
template<template< class > class other_Container>
constexpr Wrapper (Struct< other_Container > &other)
template<template< class > class other_Container>
constexpr Wrapper (const Struct< other_Container > &other)
constexpr Wrapper< Struct, referenceoperator[] (size_t i)
constexpr Wrapper< Struct, const_referenceoperator[] (size_t i) const
constexpr Wrapper< Struct, referenceoperator* ()
constexpr Wrapper< Struct, const_referenceoperator* (ptrdiff_t) const

Static Public Attributes

static constexpr Layout layout_type = Layout::soa

Detailed Description

template<template< template< class > class > class Struct, template< class > class Container>
struct memlayout::Wrapper< Struct, Container, Layout::soa >

Definition at line 134 of file wrapper.h.

Member Typedef Documentation

◆ Base

template<template< template< class > class > class Struct, template< class > class Container>
using memlayout::Wrapper< Struct, Container, Layout::soa >::Base = Struct<Container>

Definition at line 136 of file wrapper.h.

Constructor & Destructor Documentation

◆ Wrapper() [1/4]

template<template< template< class > class > class Struct, template< class > class Container>
memlayout::Wrapper< Struct, Container, Layout::soa >::Wrapper ( )
constexprdefault

◆ Wrapper() [2/4]

template<template< template< class > class > class Struct, template< class > class Container>
memlayout::Wrapper< Struct, Container, Layout::soa >::Wrapper ( Base b)
inlineconstexpr

Definition at line 140 of file wrapper.h.

140: Base{static_cast<Base&&>(b)} {}

◆ Wrapper() [3/4]

template<template< template< class > class > class Struct, template< class > class Container>
template<template< class > class other_Container>
memlayout::Wrapper< Struct, Container, Layout::soa >::Wrapper ( Struct< other_Container > & other)
inlineconstexpr

Definition at line 142 of file wrapper.h.

◆ Wrapper() [4/4]

template<template< template< class > class > class Struct, template< class > class Container>
template<template< class > class other_Container>
memlayout::Wrapper< Struct, Container, Layout::soa >::Wrapper ( const Struct< other_Container > & other)
inlineconstexpr

Definition at line 144 of file wrapper.h.

Member Function Documentation

◆ operator*() [1/2]

template<template< template< class > class > class Struct, template< class > class Container>
Wrapper< Struct, reference > memlayout::Wrapper< Struct, Container, Layout::soa >::operator* ( )
inlineconstexpr

Definition at line 149 of file wrapper.h.

149{ return operator[](0); }
constexpr Wrapper< Struct, reference > operator[](size_t i)
Definition wrapper.h:146

◆ operator*() [2/2]

template<template< template< class > class > class Struct, template< class > class Container>
Wrapper< Struct, const_reference > memlayout::Wrapper< Struct, Container, Layout::soa >::operator* ( ptrdiff_t ) const
inlineconstexpr

Definition at line 150 of file wrapper.h.

150{ return operator[](0); }

◆ operator[]() [1/2]

template<template< template< class > class > class Struct, template< class > class Container>
Wrapper< Struct, reference > memlayout::Wrapper< Struct, Container, Layout::soa >::operator[] ( size_t i)
inlineconstexpr

Definition at line 146 of file wrapper.h.

◆ operator[]() [2/2]

template<template< template< class > class > class Struct, template< class > class Container>
Wrapper< Struct, const_reference > memlayout::Wrapper< Struct, Container, Layout::soa >::operator[] ( size_t i) const
inlineconstexpr

Definition at line 147 of file wrapper.h.

Member Data Documentation

◆ layout_type

template<template< template< class > class > class Struct, template< class > class Container>
Layout memlayout::Wrapper< Struct, Container, Layout::soa >::layout_type = Layout::soa
staticconstexpr

Definition at line 135 of file wrapper.h.


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