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

Used to communicate spikes. More...

#include <spike_data.h>

Inheritance diagram for nest::SpikeData:
[legend]

Public Member Functions

 SpikeData ()
 
 SpikeData (const SpikeData &rhs)
 
 SpikeData (const Target &target, const size_t lag, const bool is_flush_event)
 
 SpikeData (const size_t tid, const synindex syn_id, const size_t lcid, const unsigned int lag)
 
SpikeData & operator= (const SpikeData &rhs)
 
void set (const size_t tid, const synindex syn_id, const size_t lcid, const unsigned int lag, const double offset)
 Required in connection with direct-send events.
 
template<class TargetT >
void set (const TargetT &target, const unsigned int lag)
 
size_t get_lcid () const
 Returns local connection ID.
 
void set_lcid (size_t)
 Sets lcid value.
 
unsigned int get_lag () const
 Returns lag in min-delay interval.
 
size_t get_tid () const
 Returns thread index.
 
synindex get_syn_id () const
 Returns synapse-type index.
 
unsigned int get_marker () const
 Returns marker.
 
void reset_marker ()
 Resets the status flag to default value.
 
void set_complete_marker ()
 Sets the status flag to complete marker.
 
void set_end_marker ()
 Sets the status flag to end marker.
 
void set_invalid_marker ()
 Sets the status flag to invalid marker.
 
bool is_complete_marker () const
 Returns whether the marker is the complete marker.
 
bool is_end_marker () const
 Returns whether the marker is the end marker.
 
bool is_invalid_marker () const
 Returns whether the marker is the invalid marker.
 
bool is_flush_event () const
 Returns whether this spike is a flush event.
 
double get_offset () const
 Returns offset.
 
void set_flush_event_flag (bool is_flush_event)
 Sets the flush event flag.
 

Protected Attributes

size_t lcid_: NUM_BITS_LCID
 local connection index
 
unsigned int marker_: NUM_BITS_MARKER_SPIKE_DATA
 status flag
 
unsigned int flush_event_: NUM_BITS_FLUSH_EVENT
 flush event flag
 
unsigned int lag_: NUM_BITS_LAG
 lag in this min-delay interval
 
unsigned int tid_: NUM_BITS_TID
 thread index
 
synindex syn_id_: NUM_BITS_SYN_ID
 synapse-type index
 

Static Protected Attributes

static constexpr int MAX_LAG = generate_max_value( NUM_BITS_LAG )
 

Detailed Description

Used to communicate spikes.

These are the elements of the MPI buffers.

See also
TargetData

Constructor & Destructor Documentation

◆ SpikeData() [1/4]

nest::SpikeData::SpikeData ( )
inline

◆ SpikeData() [2/4]

nest::SpikeData::SpikeData ( const SpikeData &  rhs)
inline

◆ SpikeData() [3/4]

nest::SpikeData::SpikeData ( const Target &  target,
const size_t  lag,
const bool  is_flush_event 
)
inline

References flush_event_, nest::FLUSH_EVENT_TRUE, and is_flush_event().

Here is the call graph for this function:

◆ SpikeData() [4/4]

nest::SpikeData::SpikeData ( const size_t  tid,
const synindex  syn_id,
const size_t  lcid,
const unsigned int  lag 
)
inline

Member Function Documentation

◆ get_lag()

unsigned int nest::SpikeData::get_lag ( ) const
inline

Returns lag in min-delay interval.

References lag_.

Referenced by nest::OffGridSpikeData::operator=().

Here is the caller graph for this function:

◆ get_lcid()

size_t nest::SpikeData::get_lcid ( ) const
inline

Returns local connection ID.

References lcid_.

Referenced by nest::ConnectionManager::fill_target_buffer(), nest::OffGridSpikeData::operator=(), and nest::Event::retrieve_sender_node_id_from_source_table().

Here is the caller graph for this function:

◆ get_marker()

unsigned int nest::SpikeData::get_marker ( ) const
inline

Returns marker.

References marker_.

Referenced by nest::OffGridSpikeData::operator=().

Here is the caller graph for this function:

◆ get_offset()

double nest::SpikeData::get_offset ( ) const
inline

Returns offset.

◆ get_syn_id()

synindex nest::SpikeData::get_syn_id ( ) const
inline

Returns synapse-type index.

References syn_id_.

Referenced by nest::OffGridSpikeData::operator=(), and nest::Event::retrieve_sender_node_id_from_source_table().

Here is the caller graph for this function:

◆ get_tid()

size_t nest::SpikeData::get_tid ( ) const
inline

Returns thread index.

References tid_.

Referenced by nest::ConnectionManager::fill_target_buffer(), nest::OffGridSpikeData::operator=(), and nest::Event::retrieve_sender_node_id_from_source_table().

Here is the caller graph for this function:

◆ is_complete_marker()

bool nest::SpikeData::is_complete_marker ( ) const
inline

Returns whether the marker is the complete marker.

References marker_, and nest::SPIKE_DATA_ID_COMPLETE.

◆ is_end_marker()

bool nest::SpikeData::is_end_marker ( ) const
inline

Returns whether the marker is the end marker.

References marker_, and nest::SPIKE_DATA_ID_END.

◆ is_flush_event()

bool nest::SpikeData::is_flush_event ( ) const
inline

Returns whether this spike is a flush event.

References flush_event_, and nest::FLUSH_EVENT_TRUE.

Referenced by nest::Event::is_flush_event(), set_flush_event_flag(), and SpikeData().

Here is the caller graph for this function:

◆ is_invalid_marker()

bool nest::SpikeData::is_invalid_marker ( ) const
inline

Returns whether the marker is the invalid marker.

References marker_, and nest::SPIKE_DATA_ID_INVALID.

◆ operator=()

SpikeData & nest::SpikeData::operator= ( const SpikeData &  rhs)
inline

References flush_event_, lag_, lcid_, marker_, syn_id_, and tid_.

◆ reset_marker()

void nest::SpikeData::reset_marker ( )
inline

Resets the status flag to default value.

References marker_, and nest::SPIKE_DATA_ID_DEFAULT.

◆ set() [1/2]

void nest::SpikeData::set ( const size_t  tid,
const synindex  syn_id,
const size_t  lcid,
const unsigned int  lag,
const double  offset 
)
inline

Required in connection with direct-send events.

References lag_, lcid_, marker_, MAX_LAG, nest::MAX_LCID, nest::MAX_SYN_ID, nest::MAX_TID, nest::SPIKE_DATA_ID_DEFAULT, syn_id_, and tid_.

Referenced by nest::OffGridSpikeData::set(), and nest::Event::set_sender_node_id_info().

Here is the caller graph for this function:

◆ set() [2/2]

template<class TargetT >
void nest::SpikeData::set ( const TargetT &  target,
const unsigned int  lag 
)
inline

◆ set_complete_marker()

void nest::SpikeData::set_complete_marker ( )
inline

Sets the status flag to complete marker.

References marker_, and nest::SPIKE_DATA_ID_COMPLETE.

◆ set_end_marker()

void nest::SpikeData::set_end_marker ( )
inline

Sets the status flag to end marker.

References marker_, and nest::SPIKE_DATA_ID_END.

◆ set_flush_event_flag()

void nest::SpikeData::set_flush_event_flag ( bool  is_flush_event)
inline

Sets the flush event flag.

References flush_event_, nest::FLUSH_EVENT_FALSE, nest::FLUSH_EVENT_TRUE, and is_flush_event().

Referenced by nest::Event::set_flush_event_flag().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ set_invalid_marker()

void nest::SpikeData::set_invalid_marker ( )
inline

Sets the status flag to invalid marker.

References marker_, and nest::SPIKE_DATA_ID_INVALID.

◆ set_lcid()

void nest::SpikeData::set_lcid ( size_t  value)
inline

Sets lcid value.

Note
Allows each rank to send the locally required buffer size per rank.

References lcid_, and nest::MAX_LCID.

Member Data Documentation

◆ flush_event_

unsigned int nest::SpikeData::flush_event_
protected

flush event flag

Referenced by is_flush_event(), operator=(), set_flush_event_flag(), and SpikeData().

◆ lag_

unsigned int nest::SpikeData::lag_
protected

◆ lcid_

size_t nest::SpikeData::lcid_
protected

◆ marker_

◆ MAX_LAG

constexpr int nest::SpikeData::MAX_LAG = generate_max_value( NUM_BITS_LAG )
staticconstexprprotected

◆ syn_id_

◆ tid_

unsigned int nest::SpikeData::tid_
protected

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