Reference documentation for deal.II version 8.1.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | Private Attributes | List of all members
WorkStream::internal::Implementation3::WorkerAndCopier< Iterator, ScratchData, CopyData > Class Template Reference

#include <work_stream.h>

Inheritance diagram for WorkStream::internal::Implementation3::WorkerAndCopier< Iterator, ScratchData, CopyData >:
[legend]

Public Member Functions

 WorkerAndCopier (const std_cxx1x::function< void(const Iterator &, ScratchData &, CopyData &)> &worker, const std_cxx1x::function< void(const CopyData &)> &copier)
 
void * operator() (void *item)
 

Private Attributes

const std_cxx1x::function
< void(const Iterator
&, ScratchData &, CopyData &)> 
worker
 
const std_cxx1x::function
< void(const CopyData &)> 
copier
 

Detailed Description

template<typename Iterator, typename ScratchData, typename CopyData>
class WorkStream::internal::Implementation3::WorkerAndCopier< Iterator, ScratchData, CopyData >

A class that manages calling the worker function on a number of parallel threads. Note that it is, in the TBB notation, a filter that can run in parallel.

Definition at line 1014 of file work_stream.h.

Constructor & Destructor Documentation

template<typename Iterator, typename ScratchData, typename CopyData>
WorkStream::internal::Implementation3::WorkerAndCopier< Iterator, ScratchData, CopyData >::WorkerAndCopier ( const std_cxx1x::function< void(const Iterator &, ScratchData &, CopyData &)> &  worker,
const std_cxx1x::function< void(const CopyData &)> &  copier 
)
inline

Constructor. Takes a reference to the object on which we will operate as well as a pointer to the function that will do the assembly.

Definition at line 1025 of file work_stream.h.

Member Function Documentation

template<typename Iterator, typename ScratchData, typename CopyData>
void* WorkStream::internal::Implementation3::WorkerAndCopier< Iterator, ScratchData, CopyData >::operator() ( void *  item)
inline

Work on an item.

Definition at line 1039 of file work_stream.h.

Member Data Documentation

template<typename Iterator, typename ScratchData, typename CopyData>
const std_cxx1x::function<void (const Iterator &, ScratchData &, CopyData &)> WorkStream::internal::Implementation3::WorkerAndCopier< Iterator, ScratchData, CopyData >::worker
private

Pointer to the function that does the assembling on the sequence of cells.

Definition at line 1151 of file work_stream.h.

template<typename Iterator, typename ScratchData, typename CopyData>
const std_cxx1x::function<void (const CopyData &)> WorkStream::internal::Implementation3::WorkerAndCopier< Iterator, ScratchData, CopyData >::copier
private

Pointer to the function that does the copying from local contribution to global object.

Definition at line 1157 of file work_stream.h.


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