$treeview $search $mathjax
Palabos  Version 1.1
$projectbrief
$projectbrief
$searchbox

plb::ReductiveBoxProcessorGenerator3D Class Reference

An automatically created generator for the ReductiveBoxProcessor3D. More...

#include <reductiveDataProcessingFunctional3D.h>

Inheritance diagram for plb::ReductiveBoxProcessorGenerator3D:
Collaboration diagram for plb::ReductiveBoxProcessorGenerator3D:

List of all members.

Public Member Functions

 ReductiveBoxProcessorGenerator3D (ReductiveBoxProcessingFunctional3D *functional_, Box3D domain)
 ~ReductiveBoxProcessorGenerator3D ()
 ReductiveBoxProcessorGenerator3D (ReductiveBoxProcessorGenerator3D const &rhs)
ReductiveBoxProcessorGenerator3Doperator= (ReductiveBoxProcessorGenerator3D const &rhs)
virtual BlockDomain::DomainT appliesTo () const
 Indicates whether data processor should be applied on envelope or not. Defaults to false.
virtual void rescale (double dxScale, double dtScale)
 This function is obsolete, and has been replaced by setscale.
virtual void getDimensionsX (std::vector< int > &dimensions) const
 Get the space dimensions of each reduced value.
virtual void getDimensionsT (std::vector< int > &dimensions) const
 Get the time dimensions of each reduced value.
virtual void getModificationPattern (std::vector< bool > &isWritten) const
 Tell which blocks are modified (written) when the processor is applied on them.
virtual void getTypeOfModification (std::vector< modif::ModifT > &modified) const
virtual DataProcessor3Dgenerate (std::vector< AtomicBlock3D * > atomicBlocks)
 Generate the data processor.
virtual
ReductiveBoxProcessorGenerator3D
clone () const
 Clone ReductiveDataProcessorGenerator, based on its dynamics type.
virtual BlockStatistics const & getStatistics () const
 Const handle to statistics object.
virtual BlockStatisticsgetStatistics ()
 Non-const handle to statistics object.
ReductiveBoxProcessingFunctional3D
const & 
getFunctional () const
virtual void serialize (Box3D &domain, std::string &data) const
virtual int getStaticId () const

Detailed Description

An automatically created generator for the ReductiveBoxProcessor3D.


Constructor & Destructor Documentation

plb::ReductiveBoxProcessorGenerator3D::ReductiveBoxProcessorGenerator3D ( ReductiveBoxProcessingFunctional3D functional_,
Box3D  domain 
)
Parameters:
functional_ The functional is not owned by the ReductiveBoxProcessorGenerator3D, i.e. it is not deleted in the destructor.

Referenced by clone().

plb::ReductiveBoxProcessorGenerator3D::~ReductiveBoxProcessorGenerator3D (  ) 
plb::ReductiveBoxProcessorGenerator3D::ReductiveBoxProcessorGenerator3D ( ReductiveBoxProcessorGenerator3D const &  rhs  ) 

Member Function Documentation

BlockDomain::DomainT plb::ReductiveBoxProcessorGenerator3D::appliesTo (  )  const [virtual]

Indicates whether data processor should be applied on envelope or not. Defaults to false.

Reimplemented from plb::ReductiveDataProcessorGenerator3D.

References plb::ReductiveBoxProcessingFunctional3D::appliesTo().

ReductiveBoxProcessorGenerator3D * plb::ReductiveBoxProcessorGenerator3D::clone (  )  const [virtual]

Clone ReductiveDataProcessorGenerator, based on its dynamics type.

Implements plb::ReductiveDataProcessorGenerator3D.

References ReductiveBoxProcessorGenerator3D().

DataProcessor3D * plb::ReductiveBoxProcessorGenerator3D::generate ( std::vector< AtomicBlock3D * >  atomicBlocks  )  [virtual]
void plb::ReductiveBoxProcessorGenerator3D::getDimensionsT ( std::vector< int > &  dimensions  )  const [virtual]

Get the time dimensions of each reduced value.

Default implementation: constant dimensions.

Reimplemented from plb::ReductiveDataProcessorGenerator3D.

References plb::ReductiveBoxProcessingFunctional3D::getDimensionsT().

void plb::ReductiveBoxProcessorGenerator3D::getDimensionsX ( std::vector< int > &  dimensions  )  const [virtual]

Get the space dimensions of each reduced value.

Default implementation: constant dimensions.

Reimplemented from plb::ReductiveDataProcessorGenerator3D.

References plb::ReductiveBoxProcessingFunctional3D::getDimensionsX().

ReductiveBoxProcessingFunctional3D const & plb::ReductiveBoxProcessorGenerator3D::getFunctional (  )  const
void plb::ReductiveBoxProcessorGenerator3D::getModificationPattern ( std::vector< bool > &  isWritten  )  const [virtual]

Tell which blocks are modified (written) when the processor is applied on them.

This function is obsolete and should be replaced by getTypeOfModification().

Reimplemented from plb::ReductiveDataProcessorGenerator3D.

References plb::ReductiveBoxProcessingFunctional3D::getModificationPattern().

int plb::ReductiveBoxProcessorGenerator3D::getStaticId (  )  const [virtual]

Return a default value of -1. This is to help transition for legacy code that has not yet implemented this method.

References plb::ReductiveBoxProcessingFunctional3D::getStaticId().

BlockStatistics & plb::ReductiveBoxProcessorGenerator3D::getStatistics (  )  [virtual]

Non-const handle to statistics object.

Implements plb::ReductiveDataProcessorGenerator3D.

References plb::ReductiveBoxProcessingFunctional3D::getStatistics().

BlockStatistics const & plb::ReductiveBoxProcessorGenerator3D::getStatistics (  )  const [virtual]
void plb::ReductiveBoxProcessorGenerator3D::getTypeOfModification ( std::vector< modif::ModifT > &  modified  )  const [virtual]

Tell which blocks are modified and how by the processor. This method must be implemented in every data processor.

Implements plb::ReductiveDataProcessorGenerator3D.

References plb::ReductiveBoxProcessingFunctional3D::getTypeOfModification().

ReductiveBoxProcessorGenerator3D & plb::ReductiveBoxProcessorGenerator3D::operator= ( ReductiveBoxProcessorGenerator3D const &  rhs  ) 
void plb::ReductiveBoxProcessorGenerator3D::rescale ( double  dxScale,
double  dtScale 
) [virtual]

This function is obsolete, and has been replaced by setscale.

Default implementation does nothing, to reflect the fact that many processor generators are invariant under change of scale. It is however important to remember to redefine this method for data processors which dependent on physical units, because otherwise the processor yields erroneous results in a MultiGrid environment.

Parameters:
dxScale Scale factor for space scale dx.
dtScale Scale factor for time scale dt.

Reimplemented from plb::ReductiveDataProcessorGenerator3D.

References plb::ReductiveBoxProcessingFunctional3D::rescale().

void plb::ReductiveBoxProcessorGenerator3D::serialize ( Box3D domain,
std::string &  data 
) const [virtual]

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