PPL Logo

ampiCommStruct Class Reference

#include <ampiimpl.h>

Collaboration diagram for ampiCommStruct:

Collaboration graph
[legend]

Public Member Functions

 ampiCommStruct (int ignored=0)
 ampiCommStruct (MPI_Comm comm_, const CkArrayID &id_, int size_)
 ampiCommStruct (MPI_Comm comm_, const CkArrayID &id_, int size_, const CkVec< int > &indices_)
 ampiCommStruct (MPI_Comm comm_, const CkArrayID &id_, int size_, const CkVec< int > &indices_, const CkVec< int > &remoteIndices_)
void setArrayID (const CkArrayID &nID)
MPI_Comm getComm (void) const
const CkVec< int > & getIndices (void) const
const CkVec< int > & getRemoteIndices (void) const
CkVec< void * > & getKeyvals (void)
CProxy_ampi getProxy (void) const
int getIndexForRank (int r) const
int getIndexForRemoteRank (int r) const
int getRankForIndex (int i) const
int getSize (void) const
int isinter (void) const
const CkVec< int > & getindices () const
const CkVec< int > & getdims () const
const CkVec< int > & getperiods () const
int getndims ()
void setndims (int ndims_)
void setdims (const CkVec< int > &dims_)
void setperiods (const CkVec< int > &periods_)
int getnvertices ()
const CkVec< int > & getindex () const
const CkVec< int > & getedges () const
void setnvertices (int nvertices_)
void setindex (const CkVec< int > &index_)
void setedges (const CkVec< int > &edges_)
void pup (PUP::er &p)

Private Member Functions

void makeWorldIndices (void) const

Private Attributes

MPI_Comm comm
CkArrayID ampiID
int size
int isWorld
int isInter
CkVec< intindices
CkVec< intremoteIndices
int ndims
CkVec< intdims
CkVec< intperiods
CkVec< void * > keyvals
int nvertices
CkVec< intindex
CkVec< intedges

Detailed Description

Definition at line 240 of file ampiimpl.h.


Constructor & Destructor Documentation

ampiCommStruct::ampiCommStruct ( int  ignored = 0  )  [inline]

Definition at line 268 of file ampiimpl.h.

References isInter, isWorld, and size.

ampiCommStruct::ampiCommStruct ( MPI_Comm  comm_,
const CkArrayID id_,
int  size_ 
) [inline]

Definition at line 269 of file ampiimpl.h.

ampiCommStruct::ampiCommStruct ( MPI_Comm  comm_,
const CkArrayID id_,
int  size_,
const CkVec< int > &  indices_ 
) [inline]

Definition at line 271 of file ampiimpl.h.

ampiCommStruct::ampiCommStruct ( MPI_Comm  comm_,
const CkArrayID id_,
int  size_,
const CkVec< int > &  indices_,
const CkVec< int > &  remoteIndices_ 
) [inline]

Definition at line 275 of file ampiimpl.h.


Member Function Documentation

void ampiCommStruct::makeWorldIndices ( void   )  const [inline, private]

Definition at line 262 of file ampiimpl.h.

References indices, CkVec< T >::push_back(), and size.

Referenced by getindices(), and getIndices().

void ampiCommStruct::setArrayID ( const CkArrayID nID  )  [inline]

Definition at line 280 of file ampiimpl.h.

References ampiID.

Referenced by ampi::ampi().

MPI_Comm ampiCommStruct::getComm ( void   )  const [inline]

const CkVec<int>& ampiCommStruct::getIndices ( void   )  const [inline]

const CkVec<int>& ampiCommStruct::getRemoteIndices ( void   )  const [inline]

Definition at line 287 of file ampiimpl.h.

References remoteIndices.

Referenced by ampiParent::getRemoteSize(), and ampi::intercommMerge().

CkVec<void *>& ampiCommStruct::getKeyvals ( void   )  [inline]

Definition at line 288 of file ampiimpl.h.

References keyvals.

Referenced by ampiParent::getAttr(), and ampiParent::putAttr().

CProxy_ampi ampiCommStruct::getProxy ( void   )  const

int ampiCommStruct::getIndexForRank ( int  r  )  const [inline]

int ampiCommStruct::getIndexForRemoteRank ( int  r  )  const [inline]

Definition at line 301 of file ampiimpl.h.

References isWorld, remoteIndices, and CkVec< T >::size().

Referenced by ampi::delesend(), ampi::getIndexForRemoteRank(), and ampi::recv().

int ampiCommStruct::getRankForIndex ( int  i  )  const [inline]

Definition at line 309 of file ampiimpl.h.

References indices, isWorld, and CkVec< T >::size().

Referenced by ampi::ampi().

int ampiCommStruct::getSize ( void   )  const [inline]

Definition at line 318 of file ampiimpl.h.

References size.

Referenced by ampi::getSize(), and ampi::splitPhase1().

int ampiCommStruct::isinter ( void   )  const [inline]

Definition at line 320 of file ampiimpl.h.

References isInter.

Referenced by ampi::isInter().

const CkVec<int>& ampiCommStruct::getindices (  )  const [inline]

Definition at line 321 of file ampiimpl.h.

References indices, isWorld, makeWorldIndices(), size, and CkVec< T >::size().

Referenced by ampi::getIndices().

const CkVec<int>& ampiCommStruct::getdims (  )  const [inline]

Definition at line 325 of file ampiimpl.h.

References dims.

Referenced by AMPI_Cart_coords(), AMPI_Cart_get(), AMPI_Cart_rank(), AMPI_Cart_shift(), and AMPI_Cart_sub().

const CkVec<int>& ampiCommStruct::getperiods (  )  const [inline]

Definition at line 326 of file ampiimpl.h.

References periods.

Referenced by AMPI_Cart_get(), AMPI_Cart_rank(), AMPI_Cart_shift(), and AMPI_Cart_sub().

int ampiCommStruct::getndims (  )  [inline]

void ampiCommStruct::setndims ( int  ndims_  )  [inline]

Definition at line 329 of file ampiimpl.h.

References ndims.

Referenced by AMPI_Cart_create(), and AMPI_Cart_sub().

void ampiCommStruct::setdims ( const CkVec< int > &  dims_  )  [inline]

Definition at line 330 of file ampiimpl.h.

References dims.

Referenced by AMPI_Cart_create(), and AMPI_Cart_sub().

void ampiCommStruct::setperiods ( const CkVec< int > &  periods_  )  [inline]

Definition at line 331 of file ampiimpl.h.

References periods.

Referenced by AMPI_Cart_create(), and AMPI_Cart_sub().

int ampiCommStruct::getnvertices (  )  [inline]

Definition at line 334 of file ampiimpl.h.

References nvertices.

Referenced by AMPI_Graphdims_get().

const CkVec<int>& ampiCommStruct::getindex (  )  const [inline]

Definition at line 335 of file ampiimpl.h.

References index.

Referenced by AMPI_Graph_get(), AMPI_Graph_neighbors(), AMPI_Graph_neighbors_count(), and AMPI_Graphdims_get().

const CkVec<int>& ampiCommStruct::getedges (  )  const [inline]

Definition at line 336 of file ampiimpl.h.

References edges.

Referenced by AMPI_Graph_get(), and AMPI_Graph_neighbors().

void ampiCommStruct::setnvertices ( int  nvertices_  )  [inline]

Definition at line 338 of file ampiimpl.h.

References nvertices.

Referenced by AMPI_Graph_create().

void ampiCommStruct::setindex ( const CkVec< int > &  index_  )  [inline]

Definition at line 339 of file ampiimpl.h.

References index.

Referenced by AMPI_Graph_create().

void ampiCommStruct::setedges ( const CkVec< int > &  edges_  )  [inline]

Definition at line 340 of file ampiimpl.h.

References edges.

Referenced by AMPI_Graph_create().

void ampiCommStruct::pup ( PUP::er p  )  [inline]

Definition at line 342 of file ampiimpl.h.

References ampiID, comm, dims, edges, index, indices, isInter, isWorld, ndims, nvertices, periods, remoteIndices, and size.


Field Documentation

Definition at line 241 of file ampiimpl.h.

Referenced by getComm(), and pup().

Definition at line 242 of file ampiimpl.h.

Referenced by pup(), and setArrayID().

Definition at line 245 of file ampiimpl.h.

Referenced by ampiCommStruct(), isinter(), and pup().

Definition at line 247 of file ampiimpl.h.

Referenced by getIndexForRemoteRank(), getRemoteIndices(), and pup().

Definition at line 249 of file ampiimpl.h.

Referenced by getndims(), pup(), and setndims().

Definition at line 250 of file ampiimpl.h.

Referenced by getdims(), pup(), and setdims().

Definition at line 251 of file ampiimpl.h.

Referenced by getperiods(), pup(), and setperiods().

CkVec<void *> ampiCommStruct::keyvals [private]

Definition at line 254 of file ampiimpl.h.

Referenced by getKeyvals().

Definition at line 257 of file ampiimpl.h.

Referenced by getnvertices(), pup(), and setnvertices().

Definition at line 258 of file ampiimpl.h.

Referenced by getindex(), pup(), and setindex().

Definition at line 259 of file ampiimpl.h.

Referenced by getedges(), pup(), and setedges().


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

Generated on Fri May 25 08:01:11 2012 for Charm++ by  doxygen 1.5.5