Hydra  4.0.1
A header-only templated C++ framework to perform data analysis on massively parallel platforms.
multiarray.h File Reference
#include <array>
#include <hydra/detail/Config.h>
#include <hydra/detail/BackendPolicy.h>
#include <hydra/detail/utility/Utility_Tuple.h>
#include <hydra/detail/functors/Caster.h>
#include <hydra/detail/Iterable_traits.h>
#include <hydra/detail/IteratorTraits.h>
#include <hydra/Tuple.h>
#include <hydra/Placeholders.h>
#include <hydra/Iterator.h>
#include <hydra/Range.h>
#include <hydra/detail/external/hydra_thrust/iterator/zip_iterator.h>
#include <hydra/detail/external/hydra_thrust/iterator/iterator_traits.h>
#include <hydra/detail/external/hydra_thrust/tuple.h>
#include <hydra/detail/external/hydra_thrust/logical.h>
#include <hydra/detail/external/hydra_thrust/functional.h>
#include <hydra/detail/external/hydra_thrust/detail/type_traits.h>
#include <hydra/detail/external/hydra_thrust/iterator/transform_iterator.h>
Include dependency graph for multiarray.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

class  hydra::multiarray< T, N, BACKEND >
 
class  hydra::multiarray< T, N, hydra::detail::BackendPolicy< BACKEND > >
 

Namespaces

 hydra
 Generic policies definition.
 

Functions

template<unsigned int I, hydra::detail::Backend BACKEND, typename T , size_t N>
auto hydra::begin (placeholders::placeholder< I >, multiarray< T, N, detail::BackendPolicy< BACKEND >> const &other) -> decltype(other.begin(placeholders::placeholder< I >
 
template<unsigned int I, hydra::detail::Backend BACKEND, typename T , size_t N>
auto hydra::begin (placeholders::placeholder< I >, multiarray< T, N, detail::BackendPolicy< BACKEND >> &other) -> decltype(other.begin(placeholders::placeholder< I >
 
template<hydra::detail::Backend BACKEND, typename T , size_t N, unsigned int... I>
auto hydra::columns (multiarray< T, N, detail::BackendPolicy< BACKEND >>const &other, placeholders::placeholder< I >...cls) -> Range< decltype(std::declval< multiarray< T, N, detail::BackendPolicy< BACKEND >>const &>().begin(placeholders::placeholder< I >
 
template<hydra::detail::Backend BACKEND, typename T , size_t N, unsigned int... I>
auto hydra::columns (multiarray< T, N, detail::BackendPolicy< BACKEND >> &other, placeholders::placeholder< I >...cls) -> Range< decltype(std::declval< multiarray< T, N, detail::BackendPolicy< BACKEND >> &&>().begin(placeholders::placeholder< I >
 
template<unsigned int I, hydra::detail::Backend BACKEND, typename T , size_t N>
auto hydra::end (placeholders::placeholder< I >, multiarray< T, N, detail::BackendPolicy< BACKEND >> const &other) -> decltype(other.end(placeholders::placeholder< I >
 
template<unsigned int I, hydra::detail::Backend BACKEND, typename T , size_t N>
auto hydra::end (placeholders::placeholder< I >, multiarray< T, N, detail::BackendPolicy< BACKEND >> &other) -> decltype(other.end(placeholders::placeholder< I >
 
template<unsigned int I, hydra::detail::Backend BACKEND, typename T , size_t N>
auto hydra::get (placeholders::placeholder< I >, multiarray< T, N, detail::BackendPolicy< BACKEND >> const &other) -> decltype(other.column(placeholders::placeholder< I >
 Return the column _I of the hydra::multiarray. More...
 
template<unsigned int I, hydra::detail::Backend BACKEND, typename T , size_t N>
auto hydra::get (placeholders::placeholder< I >, multiarray< T, N, detail::BackendPolicy< BACKEND >> &other) -> decltype(other.column(placeholders::placeholder< I >
 Return the column _I of the hydra::multiarray. More...
 
template<typename T , size_t N, hydra::detail::Backend BACKEND1, hydra::detail::Backend BACKEND2>
bool hydra::operator!= (const multiarray< T, N, hydra::detail::BackendPolicy< BACKEND1 >> &lhs, const multiarray< T, N, hydra::detail::BackendPolicy< BACKEND2 >> &rhs)
 
template<typename T , size_t N, hydra::detail::Backend BACKEND1, hydra::detail::Backend BACKEND2>
bool hydra::operator== (const multiarray< T, N, hydra::detail::BackendPolicy< BACKEND1 >> &lhs, const multiarray< T, N, hydra::detail::BackendPolicy< BACKEND2 >> &rhs)
 
return hydra::Range< iterator_type > (other.begin(cls...), other.end(cls...))
 
template<unsigned int I, hydra::detail::Backend BACKEND, typename T , size_t N>
auto hydra::rbegin (placeholders::placeholder< I >, multiarray< T, N, detail::BackendPolicy< BACKEND >> const &other) -> decltype(other.rbegin(placeholders::placeholder< I >
 
template<unsigned int I, hydra::detail::Backend BACKEND, typename T , size_t N>
auto hydra::rbegin (placeholders::placeholder< I >, multiarray< T, N, detail::BackendPolicy< BACKEND >> &other) -> decltype(other.rbegin(placeholders::placeholder< I >
 
template<unsigned int I, hydra::detail::Backend BACKEND, typename T , size_t N>
auto hydra::rend (placeholders::placeholder< I >, multiarray< T, N, detail::BackendPolicy< BACKEND >> const &other) -> decltype(other.rend(placeholders::placeholder< I >
 
template<unsigned int I, hydra::detail::Backend BACKEND, typename T , size_t N>
auto hydra::rend (placeholders::placeholder< I >, multiarray< T, N, detail::BackendPolicy< BACKEND >> &other) -> decltype(other.rend(placeholders::placeholder< I >
 

Data Structure Documentation

◆ hydra::multiarray

class hydra::multiarray

template<typename T, size_t N, typename BACKEND>
class hydra::multiarray< T, N, BACKEND >

Examples:
multiarray_container.inl, pseudo_experiment.inl, sample_distribution.inl, and splot.inl.
Inheritance diagram for hydra::multiarray< T, N, BACKEND >:
Collaboration diagram for hydra::multiarray< T, N, BACKEND >: