SyDEVS  v0.6.7
Multiscale Simulation and Systems Modeling Library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
arraynd.h File Reference
#include <sydevs/core/arraynd_base.h>
#include <ostream>

Go to the source code of this file.

Classes

class  sydevs::arraynd< T, ndims >
 A class template for a multidimensional array with elements of type T arranged in a lattice of ndims dimensions. More...
 
class  sydevs::arraynd< T, 1 >
 A one-dimensional (1D) specialization of the arraynd multidimensional array template. More...
 
struct  std::less< sydevs::array1d< T > >
 Compares 1D multidimensional arrays lexiographically (instead of element-wise as in operator()), supporting their use in std::set and other STL containers. More...
 

Namespaces

 sydevs
 
 std
 

Macros

#define SYDEVS_ARRAYND_H_
 

Typedefs

template<typename T >
using sydevs::array1d = arraynd< T, 1 >
 
template<typename T >
using sydevs::array2d = arraynd< T, 2 >
 
template<typename T >
using sydevs::array3d = arraynd< T, 3 >
 
template<typename T >
using sydevs::array4d = arraynd< T, 4 >
 
template<typename T >
using sydevs::array5d = arraynd< T, 5 >
 
template<typename T >
using sydevs::array6d = arraynd< T, 6 >
 
template<typename T >
using sydevs::array7d = arraynd< T, 7 >
 
template<typename T >
using sydevs::array8d = arraynd< T, 8 >
 
template<typename T >
using sydevs::array9d = arraynd< T, 9 >
 

Functions

template<typename T , int64 ndims>
bool sydevs::aligned (const arraynd< T, ndims > &lhs, const arraynd< T, ndims > &rhs)
 
template<typename T , int64 ndims>
arraynd< T, ndims > sydevs::operator+ (const arraynd< T, ndims > &rhs)
 
template<typename T , int64 ndims>
arraynd< T, ndims > sydevs::operator- (const arraynd< T, ndims > &rhs)
 
template<typename T , int64 ndims>
arraynd< T, ndims > sydevs::operator+ (const arraynd< T, ndims > &lhs, const arraynd< T, ndims > &rhs)
 
template<typename T , int64 ndims, typename U >
arraynd< T, ndims > sydevs::operator+ (const arraynd< T, ndims > &lhs, const U &rhs)
 
template<typename T , int64 ndims, typename U >
arraynd< T, ndims > sydevs::operator+ (const U &lhs, const arraynd< T, ndims > &rhs)
 
template<typename T , int64 ndims>
arraynd< T, ndims > sydevs::operator- (const arraynd< T, ndims > &lhs, const arraynd< T, ndims > &rhs)
 
template<typename T , int64 ndims, typename U >
arraynd< T, ndims > sydevs::operator- (const arraynd< T, ndims > &lhs, const U &rhs)
 
template<typename T , int64 ndims, typename U >
arraynd< T, ndims > sydevs::operator- (const U &lhs, const arraynd< T, ndims > &rhs)
 
template<typename T , int64 ndims>
arraynd< T, ndims > sydevs::operator* (const arraynd< T, ndims > &lhs, const arraynd< T, ndims > &rhs)
 
template<typename T , int64 ndims, typename U >
arraynd< T, ndims > sydevs::operator* (const arraynd< T, ndims > &lhs, const U &rhs)
 
template<typename T , int64 ndims, typename U >
arraynd< T, ndims > sydevs::operator* (const U &lhs, const arraynd< T, ndims > &rhs)
 
template<typename T , int64 ndims>
arraynd< T, ndims > sydevs::operator/ (const arraynd< T, ndims > &lhs, const arraynd< T, ndims > &rhs)
 
template<typename T , int64 ndims, typename U >
arraynd< T, ndims > sydevs::operator/ (const arraynd< T, ndims > &lhs, const U &rhs)
 
template<typename T , int64 ndims, typename U >
arraynd< T, ndims > sydevs::operator/ (const U &lhs, const arraynd< T, ndims > &rhs)
 
template<int64 ndims>
arraynd< bool, ndims > sydevs::operator! (const arraynd< bool, ndims > &arr)
 
template<int64 ndims>
bool sydevs::all (const arraynd< bool, ndims > &arr)
 Returns true if all elements of arr are true. More...
 
template<int64 ndims>
bool sydevs::any (const arraynd< bool, ndims > &arr)
 Returns true if any element of arr is true. More...
 
template<typename T , int64 ndims>
arraynd< bool, ndims > sydevs::operator< (const arraynd< T, ndims > &lhs, const arraynd< T, ndims > &rhs)
 
template<typename T , int64 ndims>
arraynd< bool, ndims > sydevs::operator> (const arraynd< T, ndims > &lhs, const arraynd< T, ndims > &rhs)
 
template<typename T , int64 ndims>
arraynd< bool, ndims > sydevs::operator<= (const arraynd< T, ndims > &lhs, const arraynd< T, ndims > &rhs)
 
template<typename T , int64 ndims>
arraynd< bool, ndims > sydevs::operator>= (const arraynd< T, ndims > &lhs, const arraynd< T, ndims > &rhs)
 
template<typename T , int64 ndims>
arraynd< bool, ndims > sydevs::operator== (const arraynd< T, ndims > &lhs, const arraynd< T, ndims > &rhs)
 
template<typename T , int64 ndims>
arraynd< bool, ndims > sydevs::operator!= (const arraynd< T, ndims > &lhs, const arraynd< T, ndims > &rhs)
 
template<int64 ndims>
arraynd< bool, ndims > sydevs::operator&& (const arraynd< bool, ndims > &lhs, const arraynd< bool, ndims > &rhs)
 
template<int64 ndims>
arraynd< bool, ndims > sydevs::operator|| (const arraynd< bool, ndims > &lhs, const arraynd< bool, ndims > &rhs)
 
template<typename T , int64 ndims, typename U >
arraynd< bool, ndims > sydevs::operator< (const arraynd< T, ndims > &lhs, const U &rhs)
 
template<typename T , int64 ndims, typename U >
arraynd< bool, ndims > sydevs::operator> (const arraynd< T, ndims > &lhs, const U &rhs)
 
template<typename T , int64 ndims, typename U >
arraynd< bool, ndims > sydevs::operator<= (const arraynd< T, ndims > &lhs, const U &rhs)
 
template<typename T , int64 ndims, typename U >
arraynd< bool, ndims > sydevs::operator>= (const arraynd< T, ndims > &lhs, const U &rhs)
 
template<typename T , int64 ndims, typename U >
arraynd< bool, ndims > sydevs::operator== (const arraynd< T, ndims > &lhs, const U &rhs)
 
template<typename T , int64 ndims, typename U >
arraynd< bool, ndims > sydevs::operator!= (const arraynd< T, ndims > &lhs, const U &rhs)
 
template<int64 ndims>
arraynd< bool, ndims > sydevs::operator&& (const arraynd< bool, ndims > &lhs, const bool &rhs)
 
template<int64 ndims>
arraynd< bool, ndims > sydevs::operator|| (const arraynd< bool, ndims > &lhs, const bool &rhs)
 
template<typename T , int64 ndims, typename U >
arraynd< bool, ndims > sydevs::operator< (const U &lhs, const arraynd< T, ndims > &rhs)
 
template<typename T , int64 ndims, typename U >
arraynd< bool, ndims > sydevs::operator> (const U &lhs, const arraynd< T, ndims > &rhs)
 
template<typename T , int64 ndims, typename U >
arraynd< bool, ndims > sydevs::operator<= (const U &lhs, const arraynd< T, ndims > &rhs)
 
template<typename T , int64 ndims, typename U >
arraynd< bool, ndims > sydevs::operator>= (const U &lhs, const arraynd< T, ndims > &rhs)
 
template<typename T , int64 ndims, typename U >
arraynd< bool, ndims > sydevs::operator== (const U &lhs, const arraynd< T, ndims > &rhs)
 
template<typename T , int64 ndims, typename U >
arraynd< bool, ndims > sydevs::operator!= (const U &lhs, const arraynd< T, ndims > &rhs)
 
template<int64 ndims>
arraynd< bool, ndims > sydevs::operator&& (const bool &lhs, const arraynd< bool, ndims > &rhs)
 
template<int64 ndims>
arraynd< bool, ndims > sydevs::operator|| (const bool &lhs, const arraynd< bool, ndims > &rhs)
 
template<typename T , int64 ndims, typename U >
arraynd< T, ndims > sydevs::to (const arraynd< U, ndims > &arr)
 Returns a multidimensional array with the elements of arr converted to type T. More...
 
template<typename T , int64 ndims, typename U >
arraynd< T, ndims > sydevs::replace (const arraynd< T, ndims > &lhs, const arraynd< bool, ndims > &selection, const U &rhs)
 Returns a multidimensional array similar to arr but with elements for which selection(indices) is true replaced with rhs. More...
 
template<typename T , int64 ndims, typename U >
arraynd< T, ndims > sydevs::replace (const arraynd< T, ndims > &lhs, const arraynd< bool, ndims > &selection, const arraynd< U, ndims > &rhs)
 Returns a multidimensional array similar to arr but with elements for which selection(indices) is true replaced with the corresponding elements of rhs. More...
 
template<typename T , int64 ndims>
std::ostream & sydevs::operator<< (std::ostream &os, const arraynd< T, ndims > &rhs)
 

Macro Definition Documentation

#define SYDEVS_ARRAYND_H_