Low-Level Abstraction of Memory Access
llama::mapping::BindAoSoA< Lanes, Alignment, LinearizeArrayIndexFunctor, PermuteFields > Struct Template Reference

#include <AoSoA.hpp>

Public Types

template<typename ArrayExtents , typename RecordDim >
using fn = AoSoA< ArrayExtents, RecordDim, Lanes, Alignment, LinearizeArrayIndexFunctor, PermuteFields >
 

Detailed Description

template<std::size_t Lanes, FieldAlignment Alignment = FieldAlignment::Align, typename LinearizeArrayIndexFunctor = LinearizeArrayIndexRight, template< typename > typename PermuteFields = PermuteFieldsInOrder>
struct llama::mapping::BindAoSoA< Lanes, Alignment, LinearizeArrayIndexFunctor, PermuteFields >

Binds parameters to an AoSoA mapping except for array and record dimension, producing a quoted meta function accepting the latter two. Useful to to prepare this mapping for a meta mapping.

Definition at line 117 of file AoSoA.hpp.

Member Typedef Documentation

◆ fn

template<std::size_t Lanes, FieldAlignment Alignment = FieldAlignment::Align, typename LinearizeArrayIndexFunctor = LinearizeArrayIndexRight, template< typename > typename PermuteFields = PermuteFieldsInOrder>
template<typename ArrayExtents , typename RecordDim >
using llama::mapping::BindAoSoA< Lanes, Alignment, LinearizeArrayIndexFunctor, PermuteFields >::fn = AoSoA<ArrayExtents, RecordDim, Lanes, Alignment, LinearizeArrayIndexFunctor, PermuteFields>

Definition at line 120 of file AoSoA.hpp.


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