Tensor
A C++ expression template library for computations on N dimensional tensors
Classes | Namespaces | Functions
mapper.hpp File Reference
#include <nano/nano.hpp>
#include <type_traits>
#include <utility>
#include <numeric>
Include dependency graph for mapper.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  ftl::detail::MapToIndexStatic< DimSizes, Indices >
 Takes a list of indices and a list of dimension sizes, and determines the offset of an element given by the indices, in contiguous memory. More...
 
struct  ftl::detail::MapToIndexStatic< DimSizes, IF, IR...>
 
struct  ftl::detail::MapToIndexStatic< DimSizes >
 
struct  ftl::StaticMapper
 Interface which provides static mapping (uses TMP to determine some of the mapping variables at compile time for improved performance) from indices to a single offset index and from an index offset to a list of indices. More...
 
struct  ftl::DynamicMapper
 

Namespaces

 ftl
 
 ftl::detail
 

Functions

template<size_t Iteration, typename Container >
size_t ftl::detail::MapToIndexDynamic (const Container &dim_sizes, size_t current_offset)
 
template<size_t Iteration, typename Container , typename IF , typename... IR>
size_t ftl::detail::MapToIndexDynamic (const Container &dim_sizes, size_t current_offset, IF index_first, IR...indices_rest)