NEST  2.6.0,not_revisioned_source_dir@0
Public Member Functions | Protected Attributes | List of all members
nest::ConnectorModel Class Referenceabstract

#include <connector_model.h>

Inheritance diagram for nest::ConnectorModel:
nest::GenericConnectorModel< ConnectionT >

Public Member Functions

 ConnectorModel (Network &net, const std::string)
 
 ConnectorModel (const ConnectorModel &, const std::string)
 
virtual ~ConnectorModel ()
 
size_t get_num_connections () const
 
const Timeget_min_delay () const
 
const Timeget_max_delay () const
 
void update_delay_extrema (const double_t mindelay_cand, const double_t maxdelay_cand)
 
virtual ConnectorBaseadd_connection (Node &src, Node &tgt, ConnectorBase *conn, synindex syn_id, double_t delay=NAN, double_t weight=NAN)=0
 NAN is a special value in cmath, which describes double values that are not a number. More...
 
virtual ConnectorBaseadd_connection (Node &src, Node &tgt, ConnectorBase *conn, synindex syn_id, DictionaryDatum &d, double_t delay=NAN, double_t weight=NAN)=0
 
virtual ConnectorModelclone (std::string) const =0
 
virtual void calibrate (const TimeConverter &tc)=0
 
virtual void get_status (DictionaryDatum &) const =0
 
virtual void set_status (const DictionaryDatum &)=0
 
virtual const
CommonSynapseProperties
get_common_properties () const =0
 
virtual void set_syn_id (synindex syn_id)=0
 
void assert_valid_delay_ms (double_t)
 Raise exception if delay value in milliseconds is invalid. More...
 
void assert_two_valid_delays_steps (long_t, long_t)
 Raise exception if either of the two delays in steps is invalid. More...
 
std::string get_name () const
 
bool get_user_set_delay_extrema () const
 
Networknetwork () const
 

Protected Attributes

Networknet_
 The Network instance. More...
 
Time min_delay_
 Minimal delay of all created synapses. More...
 
Time max_delay_
 Maximal delay of all created synapses. More...
 
size_t num_connections_
 The number of connections registered with this type. More...
 
bool default_delay_needs_check_
 Flag indicating, that the default delay must be checked. More...
 
bool user_set_delay_extrema_
 Flag indicating if the user set the delay extrema. More...
 
bool used_default_delay_
 
std::string name_
 

Constructor & Destructor Documentation

nest::ConnectorModel::ConnectorModel ( Network net,
const std::string  name 
)
nest::ConnectorModel::ConnectorModel ( const ConnectorModel cm,
const std::string  name 
)
virtual nest::ConnectorModel::~ConnectorModel ( )
inlinevirtual

Member Function Documentation

virtual ConnectorBase* nest::ConnectorModel::add_connection ( Node src,
Node tgt,
ConnectorBase conn,
synindex  syn_id,
double_t  delay = NAN,
double_t  weight = NAN 
)
pure virtual

NAN is a special value in cmath, which describes double values that are not a number.

If delay or weight is omitted in an add_connection call, NAN indicates this and weight/delay are set only, if they are valid.

Implemented in nest::GenericConnectorModel< ConnectionT >.

virtual ConnectorBase* nest::ConnectorModel::add_connection ( Node src,
Node tgt,
ConnectorBase conn,
synindex  syn_id,
DictionaryDatum d,
double_t  delay = NAN,
double_t  weight = NAN 
)
pure virtual
void nest::ConnectorModel::assert_two_valid_delays_steps ( long_t  new_delay1,
long_t  new_delay2 
)

Raise exception if either of the two delays in steps is invalid.

Note
Setting continuous delays requires testing d and d+1. This function implements this more efficiently than two calls to assert_valid_delay().
This test accepts the delays in steps, as this makes more sense when working with continuous delays.
Not const, since it may update delay extrema as a side-effect.

References nest::Time::delay_steps_to_ms(), nest::Network::get_max_delay(), nest::Network::get_min_delay(), nest::Time::get_ms(), nest::Time::get_resolution(), nest::Network::get_simulated(), nest::Time::get_steps(), nest::names::max, max_delay_, nest::names::min, min_delay_, net_, update_delay_extrema(), and user_set_delay_extrema_.

Referenced by nest::ContDelayConnection< targetidentifierT >::set_status().

void nest::ConnectorModel::assert_valid_delay_ms ( double_t  requested_new_delay)
virtual void nest::ConnectorModel::calibrate ( const TimeConverter tc)
pure virtual
virtual ConnectorModel* nest::ConnectorModel::clone ( std::string  ) const
pure virtual
virtual const CommonSynapseProperties& nest::ConnectorModel::get_common_properties ( ) const
pure virtual
const Time& nest::ConnectorModel::get_max_delay ( ) const
inline

References max_delay_.

const Time& nest::ConnectorModel::get_min_delay ( ) const
inline

References min_delay_.

std::string nest::ConnectorModel::get_name ( ) const
inline

References name_.

size_t nest::ConnectorModel::get_num_connections ( ) const
inline

References num_connections_.

virtual void nest::ConnectorModel::get_status ( DictionaryDatum ) const
pure virtual
bool nest::ConnectorModel::get_user_set_delay_extrema ( ) const
inline
Network& nest::ConnectorModel::network ( ) const
inline

References net_.

virtual void nest::ConnectorModel::set_status ( const DictionaryDatum )
pure virtual
virtual void nest::ConnectorModel::set_syn_id ( synindex  syn_id)
pure virtual
void nest::ConnectorModel::update_delay_extrema ( const double_t  mindelay_cand,
const double_t  maxdelay_cand 
)

Member Data Documentation

bool nest::ConnectorModel::default_delay_needs_check_
protected

Flag indicating, that the default delay must be checked.

Time nest::ConnectorModel::max_delay_
protected
Time nest::ConnectorModel::min_delay_
protected
std::string nest::ConnectorModel::name_
protected

Referenced by get_name().

Network& nest::ConnectorModel::net_
protected
size_t nest::ConnectorModel::num_connections_
protected

The number of connections registered with this type.

Referenced by get_num_connections().

bool nest::ConnectorModel::used_default_delay_
protected
bool nest::ConnectorModel::user_set_delay_extrema_
protected

Flag indicating if the user set the delay extrema.

Referenced by assert_two_valid_delays_steps(), assert_valid_delay_ms(), and get_user_set_delay_extrema().


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