ESyS-Particle  2.3.4
AMPISGBufferRoot Class Referenceabstract

Abstract base class for scatter/gather buffer, root component. More...

#include <mpisgbuf.h>

Inheritance diagram for AMPISGBufferRoot:

Public Member Functions

 AMPISGBufferRoot (MPI_Comm)
 
virtual ~AMPISGBufferRoot ()
 
virtual void clear ()=0
 
virtual void gather ()=0
 
virtual void scatter ()=0
 
virtual void append (int, int)=0
 
virtual void append (double, int)=0
 
virtual void append (const char *, int)=0
 
virtual void append (const Vec3 &, int)
 
virtual int pop_int (int)=0
 
virtual double pop_double (int)=0
 
virtual void pop_doubles (int, double *, int)=0
 
virtual Vec3 pop_vector (int)
 
const MPI_Status & status ()
 

Protected Attributes

MPI_Comm m_comm
 the MPI communicator used for the scatter/gather operations More...
 
int m_rank
 the rank in this communicator More...
 
int m_size
 size of the communicator More...
 
int m_int_increment
 
int m_dbl_increment
 the "packing size" of int/double More...
 
MPI_Status m_status
 

Detailed Description

Abstract base class for scatter/gather buffer, root component.

Author
Steffen Abe $Revision$ $Date$

Constructor & Destructor Documentation

◆ AMPISGBufferRoot()

AMPISGBufferRoot::AMPISGBufferRoot ( MPI_Comm  comm)

Constructor for AMPISGBufferRoot

Parameters
commthe MPI communicator

References m_comm, m_dbl_increment, m_int_increment, m_rank, and m_size.

◆ ~AMPISGBufferRoot()

virtual AMPISGBufferRoot::~AMPISGBufferRoot ( )
inlinevirtual

Member Function Documentation

◆ append() [1/4]

virtual void AMPISGBufferRoot::append ( const char *  ,
int   
)
pure virtual

Implemented in CMPIVarSGBufferRoot, and CMPISGBufferRoot.

◆ append() [2/4]

void AMPISGBufferRoot::append ( const Vec3 v,
int  nslice 
)
virtual

References append(), Vec3::X(), Vec3::Y(), and Vec3::Z().

Here is the call graph for this function:

◆ append() [3/4]

virtual void AMPISGBufferRoot::append ( double  ,
int   
)
pure virtual

Implemented in CMPIVarSGBufferRoot, and CMPISGBufferRoot.

◆ append() [4/4]

virtual void AMPISGBufferRoot::append ( int  ,
int   
)
pure virtual

Implemented in CMPIVarSGBufferRoot, and CMPISGBufferRoot.

Referenced by append().

Here is the caller graph for this function:

◆ clear()

virtual void AMPISGBufferRoot::clear ( )
pure virtual

Implemented in CMPIVarSGBufferRoot, and CMPISGBufferRoot.

◆ gather()

virtual void AMPISGBufferRoot::gather ( )
pure virtual

Implemented in CMPIVarSGBufferRoot, and CMPISGBufferRoot.

◆ pop_double()

virtual double AMPISGBufferRoot::pop_double ( int  )
pure virtual

Implemented in CMPIVarSGBufferRoot, and CMPISGBufferRoot.

◆ pop_doubles()

virtual void AMPISGBufferRoot::pop_doubles ( int  ,
double *  ,
int   
)
pure virtual

Implemented in CMPIVarSGBufferRoot, and CMPISGBufferRoot.

Referenced by pop_vector().

Here is the caller graph for this function:

◆ pop_int()

virtual int AMPISGBufferRoot::pop_int ( int  )
pure virtual

Implemented in CMPIVarSGBufferRoot, and CMPISGBufferRoot.

◆ pop_vector()

Vec3 AMPISGBufferRoot::pop_vector ( int  nslice)
virtual

References pop_doubles().

Here is the call graph for this function:

◆ scatter()

virtual void AMPISGBufferRoot::scatter ( )
pure virtual

Implemented in CMPIVarSGBufferRoot, and CMPISGBufferRoot.

◆ status()

const MPI_Status& AMPISGBufferRoot::status ( )
inline

References m_status.

Member Data Documentation

◆ m_comm

◆ m_dbl_increment

int AMPISGBufferRoot::m_dbl_increment
protected

the "packing size" of int/double

Referenced by AMPISGBufferRoot(), and CMPIVarSGBufferRoot::append().

◆ m_int_increment

int AMPISGBufferRoot::m_int_increment
protected

◆ m_rank

int AMPISGBufferRoot::m_rank
protected

◆ m_size

◆ m_status

MPI_Status AMPISGBufferRoot::m_status
protected

Referenced by status().


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