Hydra  4.0.1
A header-only templated C++ framework to perform data analysis on massively parallel platforms.
hydra::detail::GetBinCenter< T, N > Struct Template Reference

#include <GetBinCenter.h>

Inheritance diagram for hydra::detail::GetBinCenter< T, N >:
Collaboration diagram for hydra::detail::GetBinCenter< T, N >:

Public Member Functions

 GetBinCenter ()=delete
 
 GetBinCenter (size_t(&grid)[N], T(&lowerlimits)[N], T(&upperlimits)[N])
 
__hydra_host__ __hydra_device__ GetBinCenter (GetBinCenter< T, N > const &other)
 
template<size_t I>
__hydra_host__ __hydra_device__ std::enable_if<(I==N), void >::type get_indexes (size_t, size_t(&)[N])
 
template<size_t I = 0>
__hydra_host__ __hydra_device__ std::enable_if<(I< N), void >::type get_indexes (size_t index, size_t(&indexes)[N])
 
template<size_t I>
__hydra_host__ __hydra_device__ std::enable_if<(I==N), void >::type multiply (size_t(&)[N], size_t &)
 
template<size_t I = 0>
__hydra_host__ __hydra_device__ std::enable_if<(I< N), void >::type multiply (size_t(&obj)[N], size_t &result)
 
__hydra_host__ __hydra_device__ tuple_type< N, T >::type operator() (size_t global_bin)
 
__hydra_host__ __hydra_device__ GetBinCenter< T, N > & operator= (GetBinCenter< T, N > const &other)
 

Data Fields

fDelta [N]
 
size_t fGrid [N]
 
fIncrement [N]
 
fLowerLimits [N]
 
size_t fNGlobalBins
 

Detailed Description

template<typename T, size_t N>
struct hydra::detail::GetBinCenter< T, N >

Constructor & Destructor Documentation

◆ GetBinCenter() [1/3]

template<typename T , size_t N>
hydra::detail::GetBinCenter< T, N >::GetBinCenter ( )
delete

◆ GetBinCenter() [2/3]

template<typename T , size_t N>
hydra::detail::GetBinCenter< T, N >::GetBinCenter ( size_t(&)  grid[N],
T(&)  lowerlimits[N],
T(&)  upperlimits[N] 
)
inline

◆ GetBinCenter() [3/3]

template<typename T , size_t N>
__hydra_host__ __hydra_device__ hydra::detail::GetBinCenter< T, N >::GetBinCenter ( GetBinCenter< T, N > const &  other)
inline

Member Function Documentation

◆ get_indexes() [1/2]

template<typename T , size_t N>
template<size_t I>
__hydra_host__ __hydra_device__ std::enable_if< (I==N), void >::type hydra::detail::GetBinCenter< T, N >::get_indexes ( size_t  ,
size_t(&)  [N] 
)
inline

◆ get_indexes() [2/2]

template<typename T , size_t N>
template<size_t I = 0>
__hydra_host__ __hydra_device__ std::enable_if< (I<N), void >::type hydra::detail::GetBinCenter< T, N >::get_indexes ( size_t  index,
size_t(&)  indexes[N] 
)
inline

◆ multiply() [1/2]

template<typename T , size_t N>
template<size_t I>
__hydra_host__ __hydra_device__ std::enable_if< (I==N), void >::type hydra::detail::GetBinCenter< T, N >::multiply ( size_t(&)  [N],
size_t &   
)
inline

◆ multiply() [2/2]

template<typename T , size_t N>
template<size_t I = 0>
__hydra_host__ __hydra_device__ std::enable_if< (I<N), void >::type hydra::detail::GetBinCenter< T, N >::multiply ( size_t(&)  obj[N],
size_t &  result 
)
inline

◆ operator()()

template<typename T , size_t N>
__hydra_host__ __hydra_device__ tuple_type<N,T>::type hydra::detail::GetBinCenter< T, N >::operator() ( size_t  global_bin)
inline

◆ operator=()

template<typename T , size_t N>
__hydra_host__ __hydra_device__ GetBinCenter<T, N>& hydra::detail::GetBinCenter< T, N >::operator= ( GetBinCenter< T, N > const &  other)
inline

Field Documentation

◆ fDelta

template<typename T , size_t N>
T hydra::detail::GetBinCenter< T, N >::fDelta[N]

◆ fGrid

template<typename T , size_t N>
size_t hydra::detail::GetBinCenter< T, N >::fGrid[N]

◆ fIncrement

template<typename T , size_t N>
T hydra::detail::GetBinCenter< T, N >::fIncrement[N]

◆ fLowerLimits

template<typename T , size_t N>
T hydra::detail::GetBinCenter< T, N >::fLowerLimits[N]

◆ fNGlobalBins

template<typename T , size_t N>
size_t hydra::detail::GetBinCenter< T, N >::fNGlobalBins

The documentation for this struct was generated from the following file: