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

#include <GetBinCenter.h>

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

Public Member Functions

 GetAxisBinCenter ()=delete
 
 GetAxisBinCenter (size_t(&grid)[N], T(&lowerlimits)[N], T(&upperlimits)[N])
 
__hydra_host__ __hydra_device__ GetAxisBinCenter (GetAxisBinCenter< T, N, I > const &other)
 
template<size_t J>
__hydra_host__ __hydra_device__ std::enable_if<(J==N), void >::type get_indexes (size_t, size_t(&)[N])
 
template<size_t J = 0>
__hydra_host__ __hydra_device__ std::enable_if<(J< N), void >::type get_indexes (size_t index, size_t(&indexes)[N])
 
template<size_t J>
__hydra_host__ __hydra_device__ std::enable_if<(J==N), void >::type multiply (size_t(&)[N], size_t &)
 
template<size_t J = 0>
__hydra_host__ __hydra_device__ std::enable_if<(J< 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__ GetAxisBinCenter< T, N, I > & operator= (GetAxisBinCenter< T, N, I > 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, unsigned int I>
struct hydra::detail::GetAxisBinCenter< T, N, I >

Constructor & Destructor Documentation

◆ GetAxisBinCenter() [1/3]

template<typename T , size_t N, unsigned int I>
hydra::detail::GetAxisBinCenter< T, N, I >::GetAxisBinCenter ( )
delete

◆ GetAxisBinCenter() [2/3]

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

◆ GetAxisBinCenter() [3/3]

template<typename T , size_t N, unsigned int I>
__hydra_host__ __hydra_device__ hydra::detail::GetAxisBinCenter< T, N, I >::GetAxisBinCenter ( GetAxisBinCenter< T, N, I > const &  other)
inline

Member Function Documentation

◆ get_indexes() [1/2]

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

◆ get_indexes() [2/2]

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

◆ multiply() [1/2]

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

◆ multiply() [2/2]

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

◆ operator()()

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

◆ operator=()

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

Field Documentation

◆ fDelta

template<typename T , size_t N, unsigned int I>
T hydra::detail::GetAxisBinCenter< T, N, I >::fDelta[N]

◆ fGrid

template<typename T , size_t N, unsigned int I>
size_t hydra::detail::GetAxisBinCenter< T, N, I >::fGrid[N]

◆ fIncrement

template<typename T , size_t N, unsigned int I>
T hydra::detail::GetAxisBinCenter< T, N, I >::fIncrement[N]

◆ fLowerLimits

template<typename T , size_t N, unsigned int I>
T hydra::detail::GetAxisBinCenter< T, N, I >::fLowerLimits[N]

◆ fNGlobalBins

template<typename T , size_t N, unsigned int I>
size_t hydra::detail::GetAxisBinCenter< T, N, I >::fNGlobalBins

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