vspline 1.1.0
Generic C++11 Code for Uniform B-Splines
|
generate_aggregator is very similar to indexed_aggregator, but instead of managing and passing a coordinate to the functor, the functor now manages the argument side of the operation: it acts as a generator. To make this possible, the generator has to hold run-time modifiable state and can't be const like the functors used in the other aggregators, where the functors are 'pure' in a functional programming sense. A 'generator' functor to be used with this body of code is expected to behave in a certain fashion: More...
#include <wielding.h>
Public Types | |
enum | { channels = functor_type::channels } |
typedef functor_type::out_type | out_type |
typedef functor_type::out_ele_type | out_ele_type |
typedef functor_type::out_nd_ele_type | out_nd_ele_type |
typedef functor_type::out_v | out_v |
typedef functor_type::out_ele_v | out_ele_v |
typedef functor_type::out_nd_ele_v | out_nd_ele_v |
typedef functor_type::shape_type | crd_type |
Public Member Functions | |
generate_aggregator (const functor_type &_functor) | |
void | operator() (crd_type crd, int axis, out_type *trg, ic_type stride, ic_type length) |
Public Attributes | |
functor_type | functor |
Static Public Attributes | |
static const size_t | vsize = _vsize |
generate_aggregator is very similar to indexed_aggregator, but instead of managing and passing a coordinate to the functor, the functor now manages the argument side of the operation: it acts as a generator. To make this possible, the generator has to hold run-time modifiable state and can't be const like the functors used in the other aggregators, where the functors are 'pure' in a functional programming sense. A 'generator' functor to be used with this body of code is expected to behave in a certain fashion:
Definition at line 623 of file wielding.h.
typedef functor_type::shape_type wielding::generate_aggregator< _vsize, ic_type, functor_type, typename >::crd_type |
Definition at line 646 of file wielding.h.
typedef functor_type::out_ele_type wielding::generate_aggregator< _vsize, ic_type, functor_type, typename >::out_ele_type |
Definition at line 632 of file wielding.h.
typedef functor_type::out_ele_v wielding::generate_aggregator< _vsize, ic_type, functor_type, typename >::out_ele_v |
Definition at line 635 of file wielding.h.
typedef functor_type::out_nd_ele_type wielding::generate_aggregator< _vsize, ic_type, functor_type, typename >::out_nd_ele_type |
Definition at line 633 of file wielding.h.
typedef functor_type::out_nd_ele_v wielding::generate_aggregator< _vsize, ic_type, functor_type, typename >::out_nd_ele_v |
Definition at line 636 of file wielding.h.
typedef functor_type::out_type wielding::generate_aggregator< _vsize, ic_type, functor_type, typename >::out_type |
Definition at line 631 of file wielding.h.
typedef functor_type::out_v wielding::generate_aggregator< _vsize, ic_type, functor_type, typename >::out_v |
Definition at line 634 of file wielding.h.
anonymous enum |
Enumerator | |
---|---|
channels |
Definition at line 638 of file wielding.h.
|
inline |
Definition at line 652 of file wielding.h.
|
inline |
Definition at line 764 of file wielding.h.
functor_type wielding::generate_aggregator< _vsize, ic_type, functor_type, typename >::functor |
Definition at line 642 of file wielding.h.
|
static |
Definition at line 625 of file wielding.h.