Classes | Public Types | Public Member Functions | Public Attributes | Static Public Attributes
vpdt_mixture_accessor< mixture_type, accessor_type, typename vpdt_enable_if< vpdt_is_mixture< mixture_type > >::type > Class Template Reference

A functor to apply another functor to the component with given index. More...

#include <vpdt_mixture_accessors.h>

List of all members.

Classes

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

Public Types

typedef accessor_type::return_type return_type
 the functor return type.
typedef mixture_type distribution_type
 the distribution operated on by the functor.

Public Member Functions

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

Public Attributes

accessor_type accessor
 The accessor to apply.
unsigned int idx
 The component index.

Static Public Attributes

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

Detailed Description

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

A functor to apply another functor to the component with given index.

Definition at line 174 of file vpdt_mixture_accessors.h.


Member Typedef Documentation

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

the distribution operated on by the functor.

Definition at line 181 of file vpdt_mixture_accessors.h.

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

the functor return type.

Definition at line 179 of file vpdt_mixture_accessors.h.


Constructor & Destructor Documentation

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

Constructor.

Definition at line 192 of file vpdt_mixture_accessors.h.

template<class mixture_type , class accessor_type >
vpdt_mixture_accessor< mixture_type, accessor_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 196 of file vpdt_mixture_accessors.h.


Member Function Documentation

template<class mixture_type , class accessor_type >
bool vpdt_mixture_accessor< mixture_type, accessor_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 200 of file vpdt_mixture_accessors.h.


Member Data Documentation

template<class mixture_type , class accessor_type >
accessor_type vpdt_mixture_accessor< mixture_type, accessor_type, typename vpdt_enable_if< vpdt_is_mixture< mixture_type > >::type >::accessor

The accessor to apply.

Definition at line 209 of file vpdt_mixture_accessors.h.

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

The component index.

Definition at line 211 of file vpdt_mixture_accessors.h.

template<class mixture_type , class accessor_type >
const bool vpdt_mixture_accessor< mixture_type, accessor_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 183 of file vpdt_mixture_accessors.h.


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