23#ifndef CONNECTOR_MODEL_H
24#define CONNECTOR_MODEL_H
44class CommonSynapseProperties;
96 std::vector< ConnectorBase* >& hetconn,
99 const double delay = NAN,
100 const double weight = NAN ) = 0;
150template <
typename ConnectionT >
154 typename ConnectionT::CommonPropertiesType
cp_;
176 std::vector< ConnectorBase* >& hetconn,
180 const double weight )
override;
189 typename ConnectionT::CommonPropertiesType
const&
200 std::unique_ptr< SecondaryEvent >
217 std::vector< ConnectorBase* >& hetconn,
220 const size_t receptor_type );
Dictionary class for interface to Python and C++ API.
Definition dictionary.h:213
Class containing the common properties for all connections of a certain type.
Definition common_synapse_properties.h:50
Definition connector_model.h:69
virtual size_t get_syn_id() const =0
virtual ConnectorModel * clone(std::string, synindex syn_id) const =0
bool has_property(const ConnectionModelProperties &property) const
Definition connector_model.h:132
std::string name_
name of the ConnectorModel
Definition connector_model.h:144
virtual void calibrate(const TimeConverter &tc)=0
ConnectionModelProperties get_properties() const
Definition connector_model.h:138
virtual ~ConnectorModel()
Definition connector_model.h:74
virtual void set_status(const Dictionary &)=0
std::string get_name() const
Definition connector_model.h:126
virtual const CommonSynapseProperties & get_common_properties() const =0
virtual void set_syn_id(synindex syn_id)=0
virtual std::unique_ptr< SecondaryEvent > get_secondary_event()=0
virtual void get_status(Dictionary &) const =0
virtual void check_synapse_params(const Dictionary &) const =0
Checks to see if illegal parameters are given in syn_spec.
bool default_delay_needs_check_
indicates whether the default delay must be checked
Definition connector_model.h:145
ConnectionModelProperties properties_
connection properties
Definition connector_model.h:146
virtual void add_connection(Node &src, Node &tgt, std::vector< ConnectorBase * > &hetconn, const synindex syn_id, const Dictionary &d, const double delay=NAN, const double weight=NAN)=0
Adds a connection.
Definition connector_model.h:152
void add_connection(Node &src, Node &tgt, std::vector< ConnectorBase * > &hetconn, const synindex syn_id, const Dictionary &d, const double delay, const double weight) override
Adds a connection.
Definition connector_model_impl.h:220
void used_default_delay()
Definition connector_model_impl.h:163
size_t get_syn_id() const override
Definition connector_model_impl.h:206
ConnectionT::CommonPropertiesType cp_
Definition connector_model.h:154
void add_connection_(Node &src, Node &tgt, std::vector< ConnectorBase * > &hetconn, const synindex syn_id, ConnectionT &c, const size_t receptor_type)
Definition connector_model_impl.h:296
std::unique_ptr< SecondaryEvent > get_secondary_event() override
Definition connector_model.h:201
ConnectionT default_connection_
Definition connector_model.h:156
void set_syn_id(synindex syn_id) override
Definition connector_model_impl.h:213
ConnectionT::CommonPropertiesType const & get_common_properties() const override
Definition connector_model.h:190
ConnectionT const & get_default_connection() const
Definition connector_model.h:207
void calibrate(const TimeConverter &tc) override
Definition connector_model_impl.h:81
ConnectorModel * clone(std::string, synindex) const override
Definition connector_model_impl.h:65
size_t receptor_type_
Definition connector_model.h:157
GenericConnectorModel(const std::string name)
Definition connector_model.h:160
void check_synapse_params(const Dictionary &syn_spec) const override
Checks to see if illegal parameters are given in syn_spec.
Definition connector_model_impl.h:141
void get_status(Dictionary &) const override
Definition connector_model_impl.h:95
GenericConnectorModel(const GenericConnectorModel &cm, const std::string name)
Definition connector_model.h:166
void set_status(const Dictionary &) override
Definition connector_model_impl.h:113
Base class for all NEST network objects.
Definition node.h:99
Class to convert times from one representation to another.
Definition nest_timeconverter.h:42
Namespace for the NEST simulation kernel.
Definition beta_normalization_factor.h:33
bool flag_is_set(const Enum en, const Enum flag)
Definition enum_bitfield.h:136
ConnectionModelProperties
Definition connector_model.h:49
@ REQUIRES_EPROP_ARCHIVING
@ REQUIRES_URBANCZIK_ARCHIVING
@ REQUIRES_CLOPATH_ARCHIVING
@ NONE
Definition nest_types.h:166
size_t synindex
For enumerations of synapse types.
Definition nest_types.h:115
These methods support type-safe bitfields using C++'s enum classes.
Definition enum_bitfield.h:79
static const bool enable
Definition enum_bitfield.h:80