MPIBufferSlicer Class Reference

#include <MPIBufferSlicer.h>

Collaboration diagram for MPIBufferSlicer:

Collaboration graph
[legend]

List of all members.

Public Types

enum  MPIBufferType { tpOutputBuffer, tpInputBuffer }
enum  SliceType { sliceAnalog, sliceMixed, sliceSpiking, sliceUndefined }

Public Member Functions

 MPIBufferSlicer (MPIBufferType bufferType)
void initialize (size_t analogBufferSize, size_t maxMPIMsgSize=0, size_t spikeBufferSize=MPIBUFFER_BLOCK_SIZE)
virtual ~MPIBufferSlicer ()
void reset ()
void calcNextBufferSliceDimensions ()

Public Attributes

size_t currentSlicePos
 variables for definition of current slice
int currentAnalogSliceSize
size_t allowedSpikeSliceSize
 Allowed size of the spike portion of the slice in bytes.
SliceType currentSliceType
bool thereIsMixedDataType

Protected Attributes

MPIBufferType buffer_type
void * analog_buf
void * spike_buf
size_t spike_buffer_size_elements
size_t spike_buffer_size_bytes
size_t analog_buffer_size_elements
size_t analog_buffer_size_bytes
size_t max_mpi_msg_size


Detailed Description

Definition at line 17 of file MPIBufferSlicer.h.


Member Enumeration Documentation

Enumerator:
tpOutputBuffer 
tpInputBuffer 

Definition at line 21 of file MPIBufferSlicer.h.

Enumerator:
sliceAnalog 
sliceMixed 
sliceSpiking 
sliceUndefined 

Definition at line 35 of file MPIBufferSlicer.h.


Constructor & Destructor Documentation

MPIBufferSlicer::MPIBufferSlicer ( MPIBufferType  bufferType  ) 

Definition at line 10 of file MPIBufferSlicer.cpp.

virtual MPIBufferSlicer::~MPIBufferSlicer (  )  [inline, virtual]

Definition at line 29 of file MPIBufferSlicer.h.


Member Function Documentation

void MPIBufferSlicer::initialize ( size_t  analogBufferSize,
size_t  maxMPIMsgSize = 0,
size_t  spikeBufferSize = MPIBUFFER_BLOCK_SIZE 
)

void MPIBufferSlicer::reset (  ) 

void MPIBufferSlicer::calcNextBufferSliceDimensions (  ) 


Member Data Documentation

variables for definition of current slice

Number of bytes after the base pointer of the buffer;

Definition at line 46 of file MPIBufferSlicer.h.

Referenced by calcNextBufferSliceDimensions(), MPIOutputBuffer::prepareNextBufferSlice(), and MPIInputBuffer::prepareNextBufferSlice().

The size is in bytes. Makes sense only in analog and mixed slices.

Definition at line 53 of file MPIBufferSlicer.h.

Referenced by calcNextBufferSliceDimensions(), MPIOutputBuffer::prepareNextBufferSlice(), and MPIInputBuffer::prepareNextBufferSlice().

Allowed size of the spike portion of the slice in bytes.

Makes sense only for mixed and spiking type of slices. This is only the limit. The actual size of the spiking portion is given by the output spike buffer after serializing the data.

Definition at line 61 of file MPIBufferSlicer.h.

Referenced by calcNextBufferSliceDimensions(), and MPIOutputBuffer::prepareNextBufferSlice().

Definition at line 69 of file MPIBufferSlicer.h.

void* MPIBufferSlicer::analog_buf [protected]

Definition at line 71 of file MPIBufferSlicer.h.

void* MPIBufferSlicer::spike_buf [protected]

Definition at line 73 of file MPIBufferSlicer.h.

Definition at line 75 of file MPIBufferSlicer.h.

Referenced by initialize().

Definition at line 77 of file MPIBufferSlicer.h.

Referenced by calcNextBufferSliceDimensions(), and initialize().

Definition at line 79 of file MPIBufferSlicer.h.

Referenced by calcNextBufferSliceDimensions(), and initialize().

Definition at line 81 of file MPIBufferSlicer.h.

Referenced by calcNextBufferSliceDimensions(), and initialize().

Definition at line 83 of file MPIBufferSlicer.h.

Referenced by calcNextBufferSliceDimensions(), and initialize().


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

Generated on Wed Jul 9 16:34:51 2008 for PCSIM by  doxygen 1.5.5