Hydra  4.0.1
A header-only templated C++ framework to perform data analysis on massively parallel platforms.
ConvolutionFunctor.h File Reference
#include <hydra/detail/Config.h>
#include <hydra/Types.h>
#include <hydra/detail/BaseCompositeFunctor.h>
#include <hydra/detail/utility/Utility_Tuple.h>
#include <hydra/Parameter.h>
#include <hydra/Tuple.h>
#include <hydra/Range.h>
#include <hydra/Spline.h>
#include <hydra/Convolution.h>
#include <hydra/detail/external/hydra_thrust/transform_reduce.h>
#include <hydra/detail/FFTPolicy.h>
#include <hydra/detail/external/hydra_thrust/iterator/iterator_traits.h>
#include <type_traits>
Include dependency graph for ConvolutionFunctor.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

class  hydra::ConvolutionFunctor< Functor, Kernel, Backend, FFT, ArgType >
 
class  hydra::ConvolutionFunctor< Functor, Kernel, detail::BackendPolicy< BACKEND >, detail::FFTPolicy< typename std::common_type< typename Functor::return_type, typename Kernel::return_type >::type, FFT >, ArgType >
 
struct  hydra::detail::convolution::_delta< T >
 
struct  hydra::detail::convolution::_traits< T, ArgType >
 
struct  hydra::detail::convolution::_traits< hydra::thrust::tuple< Functor, Kernel >, ArgType >
 

Namespaces

 hydra
 Generic policies definition.
 
 hydra::detail
 
 hydra::detail::convolution
 

Functions

template<typename ArgType , typename Functor , typename Kernel , detail::Backend BACKEND, detail::FFTCalculator FFT, typename T = typename detail::stripped_type<typename std::common_type<typename Functor::return_type, typename Kernel::return_type>::type>::type>
std::enable_if< std::is_floating_point< T >::value, ConvolutionFunctor< Functor, Kernel, detail::BackendPolicy< BACKEND >, detail::FFTPolicy< T, FFT >, ArgType > >::type hydra::make_convolution (detail::BackendPolicy< BACKEND > const &, detail::FFTPolicy< T, FFT > const &, Functor const &functor, Kernel const &kernel, T kmin, T kmax, unsigned nsamples=1024, bool interpolate=true, bool power_up=true)
 

Data Structure Documentation

◆ hydra::ConvolutionFunctor

class hydra::ConvolutionFunctor

template<typename Functor, typename Kernel, typename Backend, typename FFT, typename ArgType>
class hydra::ConvolutionFunctor< Functor, Kernel, Backend, FFT, ArgType >

Collaboration diagram for hydra::ConvolutionFunctor< Functor, Kernel, Backend, FFT, ArgType >:

◆ hydra::detail::convolution::_traits

struct hydra::detail::convolution::_traits

template<typename T, typename ArgType>
struct hydra::detail::convolution::_traits< T, ArgType >

Collaboration diagram for hydra::detail::convolution::_traits< T, ArgType >:

◆ hydra::detail::convolution::_traits< hydra::thrust::tuple< Functor, Kernel >, ArgType >

struct hydra::detail::convolution::_traits< hydra::thrust::tuple< Functor, Kernel >, ArgType >

template<typename Functor, typename Kernel, typename ArgType>
struct hydra::detail::convolution::_traits< hydra::thrust::tuple< Functor, Kernel >, ArgType >

Collaboration diagram for hydra::detail::convolution::_traits< hydra::thrust::tuple< Functor, Kernel >, ArgType >:
Data Fields
typedef common_type< typename return_type, typename return_type >::type return_type
typedef return_type(ArgType) signature
typedef stripped_type< ArgType >::type value_type