Reference documentation for deal.II version 9.1.0-pre
Public Member Functions | Private Attributes | List of all members
WorkStream::internal::Implementation2::Worker< Iterator, ScratchData, CopyData > Class Template Reference

#include <deal.II/base/work_stream.h>

Inherits filter.

Public Member Functions

 Worker (const std::function< void(const Iterator &, ScratchData &, CopyData &)> &worker, bool copier_exist=true)
 
void * operator() (void *item) override
 

Private Attributes

const std::function< void(const Iterator &, ScratchData &, CopyData &)> worker
 
bool copier_exist
 

Detailed Description

template<typename Iterator, typename ScratchData, typename CopyData>
class WorkStream::internal::Implementation2::Worker< 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 468 of file work_stream.h.

Constructor & Destructor Documentation

template<typename Iterator, typename ScratchData, typename CopyData>
WorkStream::internal::Implementation2::Worker< Iterator, ScratchData, CopyData >::Worker ( const std::function< void(const Iterator &, ScratchData &, CopyData &)> &  worker,
bool  copier_exist = true 
)
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 476 of file work_stream.h.

Member Function Documentation

template<typename Iterator, typename ScratchData, typename CopyData>
void* WorkStream::internal::Implementation2::Worker< Iterator, ScratchData, CopyData >::operator() ( void *  item)
inlineoverride

Work on an item.

Definition at line 490 of file work_stream.h.

Member Data Documentation

template<typename Iterator, typename ScratchData, typename CopyData>
const std::function<void(const Iterator &, ScratchData &, CopyData &)> WorkStream::internal::Implementation2::Worker< Iterator, ScratchData, CopyData >::worker
private

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

Definition at line 599 of file work_stream.h.

template<typename Iterator, typename ScratchData, typename CopyData>
bool WorkStream::internal::Implementation2::Worker< Iterator, ScratchData, CopyData >::copier_exist
private

This flag is true if the copier stage exist. If it does not, the worker has to free the buffer. Otherwise the copier will do it.

Definition at line 605 of file work_stream.h.


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