Hydra  4.0.1
A header-only templated C++ framework to perform data analysis on massively parallel platforms.
hydra::detail::SWeights< W, F1, F2, Fs > Struct Template Reference

#include <ProcessSPlot.h>

Collaboration diagram for hydra::detail::SWeights< W, F1, F2, Fs >:

Public Types

typedef hydra::Eigen::Matrix< double, nfunctors, nfunctorscmatrix_t
 
typedef hydra::tuple< F1, F2, Fs... > functors_tuple_type
 
typedef hydra::detail::tuple_type< nfunctors, double >::type tuple_t
 

Public Member Functions

 SWeights ()=delete
 
 SWeights (const Parameter(&coeficients)[nfunctors], functors_tuple_type const &functors, cmatrix_t icmatrix)
 
 SWeights (functors_tuple_type const &functors, cmatrix_t icmatrix)
 
__hydra_host__ __hydra_device__ SWeights (SWeights< W, F1, F2, Fs... > const &other)
 
template<typename Type , int V = W>
__hydra_host__ __hydra_device__ std::enable_if<(V< 0), tuple_t >::type operator() (Type x)
 
template<typename Type , int V = W>
__hydra_host__ __hydra_device__ std::enable_if<(V >=0), double >::type operator() (Type x)
 
__hydra_host__ __hydra_device__ SWeights< W, F1, F2, Fs... > & operator= (SWeights< W, F1, F2, Fs... > const &other)
 

Data Fields

GReal_t fCoefficients [nfunctors]
 
functors_tuple_type fFunctors
 
cmatrix_t fICovMatrix
 

Static Public Attributes

static constexpr size_t nfunctors = sizeof...(Fs)+2
 

Detailed Description

template<int W, typename F1, typename F2, typename ... Fs>
struct hydra::detail::SWeights< W, F1, F2, Fs >

Member Typedef Documentation

◆ cmatrix_t

template<int W, typename F1 , typename F2 , typename ... Fs>
typedef hydra::Eigen::Matrix<double, nfunctors, nfunctors> hydra::detail::SWeights< W, F1, F2, Fs >::cmatrix_t

◆ functors_tuple_type

template<int W, typename F1 , typename F2 , typename ... Fs>
typedef hydra::tuple<F1, F2, Fs...> hydra::detail::SWeights< W, F1, F2, Fs >::functors_tuple_type

◆ tuple_t

template<int W, typename F1 , typename F2 , typename ... Fs>
typedef hydra::detail::tuple_type<nfunctors, double>::type hydra::detail::SWeights< W, F1, F2, Fs >::tuple_t

Constructor & Destructor Documentation

◆ SWeights() [1/4]

template<int W, typename F1 , typename F2 , typename ... Fs>
hydra::detail::SWeights< W, F1, F2, Fs >::SWeights ( )
delete

◆ SWeights() [2/4]

template<int W, typename F1 , typename F2 , typename ... Fs>
hydra::detail::SWeights< W, F1, F2, Fs >::SWeights ( const Parameter(&)  coeficients[nfunctors],
functors_tuple_type const &  functors,
cmatrix_t  icmatrix 
)
inlineexplicit

◆ SWeights() [3/4]

template<int W, typename F1 , typename F2 , typename ... Fs>
hydra::detail::SWeights< W, F1, F2, Fs >::SWeights ( functors_tuple_type const &  functors,
cmatrix_t  icmatrix 
)
inlineexplicit

◆ SWeights() [4/4]

template<int W, typename F1 , typename F2 , typename ... Fs>
__hydra_host__ __hydra_device__ hydra::detail::SWeights< W, F1, F2, Fs >::SWeights ( SWeights< W, F1, F2, Fs... > const &  other)
inline

Member Function Documentation

◆ operator()() [1/2]

template<int W, typename F1 , typename F2 , typename ... Fs>
template<typename Type , int V = W>
__hydra_host__ __hydra_device__ std::enable_if< (V < 0), tuple_t >::type hydra::detail::SWeights< W, F1, F2, Fs >::operator() ( Type  x)
inline

◆ operator()() [2/2]

template<int W, typename F1 , typename F2 , typename ... Fs>
template<typename Type , int V = W>
__hydra_host__ __hydra_device__ std::enable_if< (V >= 0), double >::type hydra::detail::SWeights< W, F1, F2, Fs >::operator() ( Type  x)
inline

◆ operator=()

template<int W, typename F1 , typename F2 , typename ... Fs>
__hydra_host__ __hydra_device__ SWeights< W,F1, F2, Fs...>& hydra::detail::SWeights< W, F1, F2, Fs >::operator= ( SWeights< W, F1, F2, Fs... > const &  other)
inline

Field Documentation

◆ fCoefficients

template<int W, typename F1 , typename F2 , typename ... Fs>
GReal_t hydra::detail::SWeights< W, F1, F2, Fs >::fCoefficients[nfunctors]

◆ fFunctors

template<int W, typename F1 , typename F2 , typename ... Fs>
functors_tuple_type hydra::detail::SWeights< W, F1, F2, Fs >::fFunctors

◆ fICovMatrix

template<int W, typename F1 , typename F2 , typename ... Fs>
cmatrix_t hydra::detail::SWeights< W, F1, F2, Fs >::fICovMatrix

◆ nfunctors

template<int W, typename F1 , typename F2 , typename ... Fs>
constexpr size_t hydra::detail::SWeights< W, F1, F2, Fs >::nfunctors = sizeof...(Fs)+2
static

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