vspline 1.1.0
Generic C++11 Code for Uniform B-Splines
Public Types | Public Member Functions | Public Attributes | List of all members
wielding::yield_reductor< vsz, ic_type, functor_type, typename > Struct Template Reference

an aggregator to reduce arrays. This is like using indexed_reductor with a functor gathering from an array, but due to the use of 'bunch' this class is faster for certain array types, because it can use load/shuffle operations instead of always gathering. More...

#include <wielding.h>

Public Types

enum  { dim_in = functor_type::dim_in }
 
typedef functor_type::in_type in_type
 
typedef functor_type::in_ele_type in_ele_type
 
typedef functor_type::in_v in_v
 

Public Member Functions

 yield_reductor (const functor_type &_functor)
 
void operator() (const in_type *src, ic_type in_stride, ic_type length)
 

Public Attributes

functor_type functor
 

Detailed Description

template<size_t vsz, typename ic_type, class functor_type, typename = std::enable_if < ( vsz > 1 ) >>
struct wielding::yield_reductor< vsz, ic_type, functor_type, typename >

an aggregator to reduce arrays. This is like using indexed_reductor with a functor gathering from an array, but due to the use of 'bunch' this class is faster for certain array types, because it can use load/shuffle operations instead of always gathering.

Definition at line 487 of file wielding.h.

Member Typedef Documentation

◆ in_ele_type

template<size_t vsz, typename ic_type , class functor_type , typename = std::enable_if < ( vsz > 1 ) >>
typedef functor_type::in_ele_type wielding::yield_reductor< vsz, ic_type, functor_type, typename >::in_ele_type

Definition at line 490 of file wielding.h.

◆ in_type

template<size_t vsz, typename ic_type , class functor_type , typename = std::enable_if < ( vsz > 1 ) >>
typedef functor_type::in_type wielding::yield_reductor< vsz, ic_type, functor_type, typename >::in_type

Definition at line 489 of file wielding.h.

◆ in_v

template<size_t vsz, typename ic_type , class functor_type , typename = std::enable_if < ( vsz > 1 ) >>
typedef functor_type::in_v wielding::yield_reductor< vsz, ic_type, functor_type, typename >::in_v

Definition at line 498 of file wielding.h.

Member Enumeration Documentation

◆ anonymous enum

template<size_t vsz, typename ic_type , class functor_type , typename = std::enable_if < ( vsz > 1 ) >>
anonymous enum
Enumerator
dim_in 

Definition at line 492 of file wielding.h.

Constructor & Destructor Documentation

◆ yield_reductor()

template<size_t vsz, typename ic_type , class functor_type , typename = std::enable_if < ( vsz > 1 ) >>
wielding::yield_reductor< vsz, ic_type, functor_type, typename >::yield_reductor ( const functor_type &  _functor)
inline

Definition at line 500 of file wielding.h.

Member Function Documentation

◆ operator()()

template<size_t vsz, typename ic_type , class functor_type , typename = std::enable_if < ( vsz > 1 ) >>
void wielding::yield_reductor< vsz, ic_type, functor_type, typename >::operator() ( const in_type src,
ic_type  in_stride,
ic_type  length 
)
inline

Definition at line 504 of file wielding.h.

Member Data Documentation

◆ functor

template<size_t vsz, typename ic_type , class functor_type , typename = std::enable_if < ( vsz > 1 ) >>
functor_type wielding::yield_reductor< vsz, ic_type, functor_type, typename >::functor

Definition at line 494 of file wielding.h.


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