Classes | Public Types | Public Member Functions | Public Attributes | Static Public Attributes | List of all members
vpdt_mixture_accessor< mixture_type, vpdt_weight_accessor< typename mixture_type::component_type >, typename vpdt_enable_if< vpdt_is_mixture< mixture_type > >::type > Class Template Reference

A specialization to make the weight accessor work as a mixture accessor. More...

#include <vpdt_mixture_accessors.h>

Classes

struct  rebind
 rebind this functor to another distribution type. More...
 

Public Types

typedef vpdt_weight_accessor< typename mixture_type::component_type > accessor_type
 the accessor type. More...
 
typedef vpdt_dist_traits< mixture_type >::scalar_type return_type
 the functor return type. More...
 
typedef mixture_type distribution_type
 the distribution operated on by the functor. More...
 

Public Member Functions

 vpdt_mixture_accessor (unsigned int index=0)
 Constructor. More...
 
 vpdt_mixture_accessor (const accessor_type &a, unsigned int index=0)
 Constructor. More...
 
bool operator() (const mixture_type &mix, return_type &retval) const
 The main function. More...
 

Public Attributes

unsigned int idx
 The component index. More...
 

Static Public Attributes

static const bool valid_functor = true
 is this functor valid for its distribution type. More...
 

Detailed Description

template<class mixture_type>
class vpdt_mixture_accessor< mixture_type, vpdt_weight_accessor< typename mixture_type::component_type >, typename vpdt_enable_if< vpdt_is_mixture< mixture_type > >::type >

A specialization to make the weight accessor work as a mixture accessor.

Definition at line 217 of file vpdt_mixture_accessors.h.

Member Typedef Documentation

◆ accessor_type

template<class mixture_type >
typedef vpdt_weight_accessor<typename mixture_type::component_type> vpdt_mixture_accessor< mixture_type, vpdt_weight_accessor< typename mixture_type::component_type >, typename vpdt_enable_if< vpdt_is_mixture< mixture_type > >::type >::accessor_type

the accessor type.

Definition at line 223 of file vpdt_mixture_accessors.h.

◆ distribution_type

template<class mixture_type >
typedef mixture_type vpdt_mixture_accessor< mixture_type, vpdt_weight_accessor< typename mixture_type::component_type >, typename vpdt_enable_if< vpdt_is_mixture< mixture_type > >::type >::distribution_type

the distribution operated on by the functor.

Definition at line 227 of file vpdt_mixture_accessors.h.

◆ return_type

template<class mixture_type >
typedef vpdt_dist_traits<mixture_type>::scalar_type vpdt_mixture_accessor< mixture_type, vpdt_weight_accessor< typename mixture_type::component_type >, typename vpdt_enable_if< vpdt_is_mixture< mixture_type > >::type >::return_type

the functor return type.

Definition at line 225 of file vpdt_mixture_accessors.h.

Constructor & Destructor Documentation

◆ vpdt_mixture_accessor() [1/2]

template<class mixture_type >
vpdt_mixture_accessor< mixture_type, vpdt_weight_accessor< typename mixture_type::component_type >, typename vpdt_enable_if< vpdt_is_mixture< mixture_type > >::type >::vpdt_mixture_accessor ( unsigned int  index = 0)
inline

Constructor.

Definition at line 238 of file vpdt_mixture_accessors.h.

◆ vpdt_mixture_accessor() [2/2]

template<class mixture_type >
vpdt_mixture_accessor< mixture_type, vpdt_weight_accessor< typename mixture_type::component_type >, typename vpdt_enable_if< vpdt_is_mixture< mixture_type > >::type >::vpdt_mixture_accessor ( const accessor_type a,
unsigned int  index = 0 
)
inline

Constructor.

Definition at line 242 of file vpdt_mixture_accessors.h.

Member Function Documentation

◆ operator()()

template<class mixture_type >
bool vpdt_mixture_accessor< mixture_type, vpdt_weight_accessor< typename mixture_type::component_type >, typename vpdt_enable_if< vpdt_is_mixture< mixture_type > >::type >::operator() ( const mixture_type &  mix,
return_type retval 
) const
inline

The main function.

Definition at line 246 of file vpdt_mixture_accessors.h.

Member Data Documentation

◆ idx

template<class mixture_type >
unsigned int vpdt_mixture_accessor< mixture_type, vpdt_weight_accessor< typename mixture_type::component_type >, typename vpdt_enable_if< vpdt_is_mixture< mixture_type > >::type >::idx

The component index.

Definition at line 256 of file vpdt_mixture_accessors.h.

◆ valid_functor

template<class mixture_type >
const bool vpdt_mixture_accessor< mixture_type, vpdt_weight_accessor< typename mixture_type::component_type >, typename vpdt_enable_if< vpdt_is_mixture< mixture_type > >::type >::valid_functor = true
static

is this functor valid for its distribution type.

Definition at line 229 of file vpdt_mixture_accessors.h.


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