PetaVision  Alpha
 All Data Structures Namespaces Functions Variables
PV::Publisher Class Reference

Public Member Functions

 Publisher (int pubId, HyPerCol *hc, int numItems, PVLayerLoc loc, int numLevels, bool isSparse)
DataStoredataStore ()
int exchangeBorders (int neighbors[], int numNeighbors, const PVLayerLoc *loc, int delay=0)
int increaseTimeLevel ()
int publish (HyPerLayer *pub, int neighbors[], int numNeighbors, int borders[], int numBorders, PVLayerCube *data, int delay=0)
int readData (int delay)
int subscribe (BaseConnection *conn)
int updateActiveIndices ()
int updateAllActiveIndices ()
int wait ()

Static Public Member Functions

static int borderStoreIndex (int i, int numNeighbors)

Private Member Functions

int calcActiveIndices ()
int calcAllActiveIndices ()
unsigned int * recvActiveIndicesBuffer (int bufferId)
unsigned int * recvActiveIndicesBuffer (int bufferId, int delay)
pvdata_t * recvBuffer (int bufferId)
pvdata_t * recvBuffer (int bufferId, int delay)
long * recvNumActiveBuffer (int bufferId)
long * recvNumActiveBuffer (int bufferId, int delay)

Private Attributes

BaseConnection ** connection
PVLayerCube cube
MPI_Datatype * neighborDatatypes
int numRequests
int numSubscribers
int pubId
MPI_Request * requests
int subscriberArraySize

Detailed Description

Definition at line 26 of file InterColComm.hpp.

Member Function Documentation

int PV::Publisher::wait ( )

wait until all outstanding published messages have arrived

Definition at line 317 of file InterColComm.cpp.

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