Low-Level Abstraction of Memory Access
Projection.hpp File Reference
#include "../ProxyRefOpMixin.hpp"
#include "../View.hpp"
#include "Common.hpp"
+ Include dependency graph for Projection.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  llama::mapping::internal::UnaryFunctionTraits< F >
 
struct  llama::mapping::internal::UnaryFunctionTraits< Ret(*)(Arg)>
 
struct  llama::mapping::internal::MakeReplacerProj< ProjectionMap >
 
struct  llama::mapping::internal::ProjectionReference< Reference, Projection >
 
struct  llama::mapping::Projection< TArrayExtents, TRecordDim, InnerMapping, TProjectionMap >
 
struct  llama::mapping::BindProjection< InnerMapping, ProjectionMap >
 

Namespaces

 llama
 
 llama::mapping
 
 llama::mapping::internal
 

Typedefs

template<typename ProjectionMap , typename Coord , typename RecordDimType >
using llama::mapping::internal::ProjectionOrVoid = typename decltype(projectionOrVoidImpl< ProjectionMap, Coord, RecordDimType >())::type
 
template<typename RecordDim , typename ProjectionMap >
using llama::mapping::internal::ReplaceTypesByProjectionResults = TransformLeavesWithCoord< RecordDim, MakeReplacerProj< ProjectionMap >::template fn >
 

Functions

template<typename ProjectionMap , typename Coord , typename RecordDimType >
auto llama::mapping::internal::projectionOrVoidImpl ()
 

Variables

template<typename Mapping >
constexpr bool llama::mapping::isProjection = false
 
template<typename TArrayExtents , typename TRecordDim , template< typename, typename > typename InnerMapping, typename ReplacementMap >
constexpr bool llama::mapping::isProjection< Projection< TArrayExtents, TRecordDim, InnerMapping, ReplacementMap > > = true