GEOSX
Namespaces | Functions
sliceHelpers.hpp File Reference

Contains functions for interacting with ArraySlices of arbitrary dimension. More...

#include "ArraySlice.hpp"

Go to the source code of this file.

Namespaces

 LvArray
 The top level namespace.
 

Functions

template<typename T , typename LAMBDA >
void LvArray::forValuesInSlice (T &value, LAMBDA &&f)
 Apply the given function to the given value. More...
 
template<typename T , int NDIM, int USD, typename INDEX_TYPE , typename LAMBDA >
void LvArray::forValuesInSlice (ArraySlice< T, NDIM, USD, INDEX_TYPE > const slice, LAMBDA &&f)
 Iterate over the values in the slice in lexicographic order. More...
 
template<typename T , typename LAMBDA , typename ... INDICES>
void LvArray::forValuesInSliceWithIndices (T &value, LAMBDA &&f, INDICES const ... indices)
 Apply the function f to the value value also passing f any indices used to reach value. More...
 
template<typename T , int NDIM, int USD, typename INDEX_TYPE , typename LAMBDA , typename ... INDICES>
void LvArray::forValuesInSliceWithIndices (ArraySlice< T, NDIM, USD, INDEX_TYPE > const slice, LAMBDA &&f, INDICES const ... indices)
 Iterate over the values in the slice in lexicographic order, passing the indices as well as the value to the lambda. More...
 
template<typename T , int USD_SRC, typename INDEX_TYPE >
void LvArray::sumOverFirstDimension (ArraySlice< T const, 1, USD_SRC, INDEX_TYPE > const src, T &dst)
 Add the values in src to dst. More...
 
template<typename T , int NDIM, int USD_SRC, int USD_DST, typename INDEX_TYPE >
void LvArray::sumOverFirstDimension (ArraySlice< T const, NDIM, USD_SRC, INDEX_TYPE > const src, ArraySlice< T, NDIM - 1, USD_DST, INDEX_TYPE > const dst)
 Sum over the first dimension of src adding the results to dst. More...
 

Detailed Description

Contains functions for interacting with ArraySlices of arbitrary dimension.

Definition in file sliceHelpers.hpp.