NEST main@caf0ae8
 
Loading...
Searching...
No Matches
nest::MPIManager::OffGridSpike Class Reference

Combined storage of node ID and offset information for off-grid spikes. More...

#include <mpi_manager.h>

Public Types

typedef unsigned int node_id_external_type
 We defined this type explicitly, so that the assert function below always tests the correct type.
 

Public Member Functions

 OffGridSpike ()
 
 OffGridSpike (node_id_external_type node_idv, double offsetv)
 
unsigned int get_node_id () const
 
void set_node_id (node_id_external_type node_id)
 
double get_offset () const
 

Static Private Member Functions

static void assert_datatype_compatibility_ ()
 This function asserts that doubles can hold node IDs without loss.
 

Private Attributes

double node_id_
 node ID of neuron that spiked
 
double offset_
 offset of spike from grid
 

Friends

void MPIManager::init_mpi (int *, char ***)
 

Detailed Description

Combined storage of node ID and offset information for off-grid spikes.

Note
This class actually stores the node ID as double internally. This is done so that the user-defined MPI type MPI_OFFGRID_SPIKE, which we use to communicate off-grid spikes, is homogeneous. Otherwise, OpenMPI spends extreme amounts of time on packing and unpacking the data, see #458.

Member Typedef Documentation

◆ node_id_external_type

We defined this type explicitly, so that the assert function below always tests the correct type.

Constructor & Destructor Documentation

◆ OffGridSpike() [1/2]

nest::MPIManager::OffGridSpike::OffGridSpike ( )
inline

◆ OffGridSpike() [2/2]

nest::MPIManager::OffGridSpike::OffGridSpike ( node_id_external_type  node_idv,
double  offsetv 
)
inline

Member Function Documentation

◆ assert_datatype_compatibility_()

static void nest::MPIManager::OffGridSpike::assert_datatype_compatibility_ ( )
inlinestaticprivate

This function asserts that doubles can hold node IDs without loss.

References get_node_id().

Here is the call graph for this function:

◆ get_node_id()

unsigned int nest::MPIManager::OffGridSpike::get_node_id ( ) const
inline

References node_id_.

Referenced by assert_datatype_compatibility_().

Here is the caller graph for this function:

◆ get_offset()

double nest::MPIManager::OffGridSpike::get_offset ( ) const
inline

References offset_.

◆ set_node_id()

void nest::MPIManager::OffGridSpike::set_node_id ( node_id_external_type  node_id)
inline

References node_id_.

Friends And Related Symbol Documentation

◆ MPIManager::init_mpi

void MPIManager::init_mpi ( int *  ,
char ***   
)
friend

Member Data Documentation

◆ node_id_

double nest::MPIManager::OffGridSpike::node_id_
private

node ID of neuron that spiked

Referenced by get_node_id(), and set_node_id().

◆ offset_

double nest::MPIManager::OffGridSpike::offset_
private

offset of spike from grid

Referenced by get_offset().


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