Hydra  4.0.1
A header-only templated C++ framework to perform data analysis on massively parallel platforms.
DenseHistogram.h File Reference
#include <hydra/detail/Config.h>
#include <hydra/detail/BackendPolicy.h>
#include <hydra/cpp/System.h>
#include <hydra/Types.h>
#include <hydra/detail/Dimensionality.h>
#include <hydra/detail/functors/GetBinCenter.h>
#include <hydra/Range.h>
#include <hydra/Algorithm.h>
#include <hydra/Placeholders.h>
#include <hydra/detail/external/hydra_thrust/iterator/counting_iterator.h>
#include <type_traits>
#include <utility>
#include <array>
#include <hydra/detail/DenseHistogram.inl>
Include dependency graph for DenseHistogram.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

class  hydra::DenseHistogram< T, N, BACKEND, typename, typename >
 
class  hydra::DenseHistogram< T, 1, hydra::detail::BackendPolicy< BACKEND >, detail::unidimensional >
 Class representing one-dimensional dense histogram. More...
 
class  hydra::DenseHistogram< T, N, detail::BackendPolicy< BACKEND >, detail::multidimensional >
 Class representing multidimensional dense histograms. More...
 

Namespaces

 hydra
 Generic policies definition.
 

Functions

template<typename T , typename Iterator , size_t N, hydra::detail::Backend BACKEND>
DenseHistogram< T, N, detail::BackendPolicy< BACKEND >, detail::multidimensional > hydra::make_dense_histogram (detail::BackendPolicy< BACKEND > backend, std::array< size_t, N >const &grid, std::array< double, N > const &lowerlimits, std::array< double, N > const &upperlimits, Iterator first, Iterator end)
 Function to make a N-dimensional dense histogram. More...
 
template<typename T , size_t N, hydra::detail::Backend BACKEND, typename Iterable >
std::enable_if< hydra::detail::is_iterable< Iterable >::value, DenseHistogram< T, N, detail::BackendPolicy< BACKEND >, detail::multidimensional > >::type hydra::make_dense_histogram (detail::BackendPolicy< BACKEND > backend, std::array< size_t, N > const &grid, std::array< double, N > const &lowerlimits, std::array< double, N > const &upperlimits, Iterable &&data)
 Function to make a N-dimensional dense histogram. More...
 
template<typename T , size_t N, hydra::detail::Backend BACKEND, typename Iterable1 , typename Iterable2 >
std::enable_if< hydra::detail::is_iterable< Iterable1 >::value &&hydra::detail::is_iterable< Iterable2 >::value, DenseHistogram< T, N, detail::BackendPolicy< BACKEND >, detail::multidimensional > >::type hydra::make_dense_histogram (detail::BackendPolicy< BACKEND > backend, std::array< size_t, N > const &grid, std::array< double, N > const &lowerlimits, std::array< double, N > const &upperlimits, Iterable1 &&data, Iterable2 &&weight)
 Function to make a N-dimensional dense histogram. More...
 
template<typename T , typename Iterator , hydra::detail::Backend BACKEND>
DenseHistogram< T, 1, detail::BackendPolicy< BACKEND >, detail::unidimensional > hydra::make_dense_histogram (detail::BackendPolicy< BACKEND > backend, size_t nbins, double lowerlimit, double upperlimit, Iterator first, Iterator end)
 Function to make a 1-dimensional dense histogram. More...
 
template<typename T , typename Iterator1 , typename Iterator2 , hydra::detail::Backend BACKEND>
DenseHistogram< T, 1, detail::BackendPolicy< BACKEND >, detail::unidimensional > hydra::make_dense_histogram (detail::BackendPolicy< BACKEND > backend, size_t nbins, double lowerlimit, double upperlimit, Iterator1 first, Iterator1 end, Iterator2 wfirst)
 Function to make a 1-dimensional dense histogram. More...
 
template<typename T , hydra::detail::Backend BACKEND, typename Iterable >
std::enable_if< hydra::detail::is_iterable< Iterable >::value, DenseHistogram< T, 1, detail::BackendPolicy< BACKEND >, detail::unidimensional > >::type hydra::make_dense_histogram (detail::BackendPolicy< BACKEND > backend, size_t nbins, double lowerlimits, double upperlimits, Iterable &&data)
 Function to make a N-dimensional dense histogram. More...
 
template<typename T , hydra::detail::Backend BACKEND, typename Iterable1 , typename Iterable2 >
std::enable_if< hydra::detail::is_iterable< Iterable1 >::value &&hydra::detail::is_iterable< Iterable2 >::value, DenseHistogram< T, 1, detail::BackendPolicy< BACKEND >, detail::unidimensional > >::type hydra::make_dense_histogram (detail::BackendPolicy< BACKEND > backend, size_t nbins, double lowerlimits, double upperlimits, Iterable1 &&data, Iterable2 &&weight)
 Function to make a N-dimensional dense histogram. More...