OpenFPM_pdata  4.1.0
Project that contain the implementation of distributed structures
 
Loading...
Searching...
No Matches
reduce_op_final< aggr_vect, red_type, reduction_vectors > Struct Template Reference

this class is a functor for "for_each" algorithm More...

Detailed Description

template<typename aggr_vect, typename red_type, typename reduction_vectors>
struct reduce_op_final< aggr_vect, red_type, reduction_vectors >

this class is a functor for "for_each" algorithm

This class is a functor for "for_each" algorithm. For each element of the boost::vector the operator() is called. Is mainly used to copy one encap into another encap object

Template Parameters
aggr_vectaggregate that where i reduce
typeof reduction to operare

Definition at line 179 of file trash_bin.hpp.

#include <trash_bin.hpp>

Public Types

typedef boost::mpl::size< reduction_vectors >::type nred
 

Public Member Functions

__device__ __host__ reduce_op_final (aggr_vect &red, red_type &red_space)
 constructor
 
template<typename T >
__device__ __host__ void operator() (T &t)
 It call the copy function for each property.
 

Data Fields

aggr_vect & red
 reduction aggregate
 
red_type * red_space
 block to reduce
 
red_type red_final [nred::value]
 

Member Typedef Documentation

◆ nred

template<typename aggr_vect , typename red_type , typename reduction_vectors >
typedef boost::mpl::size<reduction_vectors>::type reduce_op_final< aggr_vect, red_type, reduction_vectors >::nred

Definition at line 187 of file trash_bin.hpp.

Constructor & Destructor Documentation

◆ reduce_op_final()

template<typename aggr_vect , typename red_type , typename reduction_vectors >
__device__ __host__ reduce_op_final< aggr_vect, red_type, reduction_vectors >::reduce_op_final ( aggr_vect &  red,
red_type &  red_space 
)
inline

constructor

Parameters
srcsource encapsulated object
dstsource encapsulated object

Definition at line 197 of file trash_bin.hpp.

Member Function Documentation

◆ operator()()

template<typename aggr_vect , typename red_type , typename reduction_vectors >
template<typename T >
__device__ __host__ void reduce_op_final< aggr_vect, red_type, reduction_vectors >::operator() ( T &  t)
inline

It call the copy function for each property.

Definition at line 204 of file trash_bin.hpp.

Field Documentation

◆ red

template<typename aggr_vect , typename red_type , typename reduction_vectors >
aggr_vect& reduce_op_final< aggr_vect, red_type, reduction_vectors >::red

reduction aggregate

Definition at line 182 of file trash_bin.hpp.

◆ red_final

template<typename aggr_vect , typename red_type , typename reduction_vectors >
red_type reduce_op_final< aggr_vect, red_type, reduction_vectors >::red_final[nred::value]

Definition at line 189 of file trash_bin.hpp.

◆ red_space

template<typename aggr_vect , typename red_type , typename reduction_vectors >
red_type* reduce_op_final< aggr_vect, red_type, reduction_vectors >::red_space

block to reduce

Definition at line 185 of file trash_bin.hpp.


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