44template <
typename ElementT >
48 GenericModel(
const std::string&,
const std::string& deprecation_info );
58 Model*
clone(
const std::string& )
const override;
122template <
typename ElementT >
126 , deprecation_info_( deprecation_info )
127 , deprecation_warning_issued_( false )
132template <
typename ElementT >
135 , proto_( oldmod.proto_ )
136 , deprecation_info_( oldmod.deprecation_info_ )
137 , deprecation_warning_issued_( false )
143template <
typename ElementT >
150template <
typename ElementT >
154 Node* n =
new ElementT( proto_ );
158template <
typename ElementT >
162 return proto_.has_proxies();
165template <
typename ElementT >
169 return proto_.local_receiver();
172template <
typename ElementT >
176 return proto_.one_node_per_process();
179template <
typename ElementT >
183 return proto_.is_off_grid();
186template <
typename ElementT >
190 proto_.calibrate_time( tc );
193template <
typename ElementT >
197 return proto_.send_test_event( target, receptor, syn_id, dummy_target );
200template <
typename ElementT >
204 return proto_.sends_secondary_event( ge );
207template <
typename ElementT >
211 return proto_.sends_secondary_event( re );
214template <
typename ElementT >
218 return proto_.sends_secondary_event( de );
221template <
typename ElementT >
225 return proto_.sends_secondary_event( re );
228template <
typename ElementT >
232 return proto_.sends_secondary_event( re );
235template <
typename ElementT >
239 return proto_.sends_secondary_event( sic );
242template <
typename ElementT >
246 return proto_.sends_signal();
249template <
typename ElementT >
253 proto_.set_status( d );
256template <
typename ElementT >
265template <
typename ElementT >
269 return sizeof( ElementT );
272template <
typename ElementT >
279template <
typename ElementT >
286template <
typename ElementT >
290 return proto_.get_model_id();
Dictionary class for interface to Python and C++ API.
Definition dictionary.h:213
Event for rate model connections with delay.
Definition secondary_event.h:331
Event for diffusion connections (rate model connections for the siegert_neuron).
Definition secondary_event.h:348
Event for gap-junction information.
Definition secondary_event.h:299
Generic Model template.
Definition genericmodel.h:46
void calibrate_time(const TimeConverter &tc) override
Definition genericmodel.h:188
size_t get_element_size() const override
Return the size of the prototype.
Definition genericmodel.h:267
bool local_receiver() override
Definition genericmodel.h:167
Dictionary get_status_() override
Definition genericmodel.h:258
void set_status_(const Dictionary &) override
Definition genericmodel.h:251
std::string deprecation_info_
String containing deprecation information; empty if model not deprecated.
Definition genericmodel.h:116
void sends_secondary_event(GapJunctionEvent &ge) override
Definition genericmodel.h:202
Node * create_() override
Call placement new on the supplied memory position.
Definition genericmodel.h:152
bool one_node_per_process() override
Definition genericmodel.h:174
ElementT proto_
Prototype node from which all instances are constructed.
Definition genericmodel.h:111
void deprecation_warning(const std::string &) override
Issue deprecation warning on first call if model is deprecated.
Definition genericmodel_impl.h:37
bool deprecation_warning_issued_
False until deprecation warning has been issued once.
Definition genericmodel.h:119
int get_model_id() override
Get the model id from the prototype.
Definition genericmodel.h:288
Model * clone(const std::string &) const override
Return pointer to cloned model with same name.
Definition genericmodel.h:145
bool is_off_grid() override
Definition genericmodel.h:181
size_t send_test_event(Node &, size_t, synindex, bool) override
Send a test event to a target node.
Definition genericmodel.h:195
SignalType sends_signal() const override
Check what type of signal this model is sending.
Definition genericmodel.h:244
Node const & get_prototype() const override
Return const reference to the prototype.
Definition genericmodel.h:274
GenericModel(const std::string &, const std::string &deprecation_info)
Definition genericmodel.h:123
bool has_proxies() override
Definition genericmodel.h:160
void set_model_id(int) override
Set the model id on the prototype.
Definition genericmodel.h:281
Event for rate model connections without delay.
Definition secondary_event.h:315
Event for learning signal connections.
Definition secondary_event.h:384
Base class for all Models.
Definition model.h:53
void set_threads()
Set number of threads based on number set in network.
Definition model.cpp:47
size_t get_type_id() const
Definition model.h:207
void set_type_id(size_t id)
Set the model id on the prototype.
Definition model.h:201
Base class for all NEST network objects.
Definition node.h:99
void set_model_id(int)
Set the model id.
Definition node.h:1220
Event for slow inward current (SIC) connections between astrocytes and neurons.
Definition secondary_event.h:458
Class to convert times from one representation to another.
Definition nest_timeconverter.h:42
const std::string elementsize("elementsize")
Namespace for the NEST simulation kernel.
Definition beta_normalization_factor.h:33
SignalType
enum type of signal conveyed by spike events of a node.
Definition nest_types.h:165
size_t synindex
For enumerations of synapse types.
Definition nest_types.h:115