52 Model(
const std::string& name);
64 virtual Model*
clone(
const std::string&)
const =0;
size_t index
Unsigned long type for enumerations.
Definition: nest.h:109
index get_type_id() const
Definition: model.h:174
virtual ~Model()
Definition: model.h:59
Definition: lockptrdatum.h:40
Declarations for base class Node.
void set_threads_(thread t)
Set the number of threads.
Definition: model.cpp:44
std::string name_
Name of the Model.
Definition: model.h:211
virtual void set_status_(DictionaryDatum)=0
long_t rport
Connection port number to distinguish incoming connections, also called receiver port.
Definition: nest.h:147
DictionaryDatum get_status(void)
Export properties of the prototype node by setting entries in the status dictionary.
Definition: model.cpp:100
virtual bool has_proxies()=0
virtual bool potential_global_receiver()=0
virtual Model * clone(const std::string &) const =0
Create clone with new name.
Model(const std::string &name)
Definition: model.cpp:33
Model(const Model &m)
Definition: model.h:53
virtual DictionaryDatum get_status_()=0
std::string get_name() const
Return name of the Model.
Definition: model.h:244
size_t mem_capacity()
Return the memory capacity.
Definition: model.cpp:79
void set_threads()
Set number of threads based on number set in network.
Definition: model.cpp:39
virtual bool one_node_per_process()=0
Node * allocate(thread t)
Allocate new Node and return its pointer.
Definition: model.h:230
Base class for all Models.
Definition: model.h:48
virtual void set_model_id(int)=0
Set the model id on the prototype.
void set_status(DictionaryDatum)
Change properties of the prototype node according to the entries in the dictionary.
Definition: model.cpp:88
void clear()
Deletes all nodes which belong to this model.
Definition: model.cpp:63
long_t port
Connection port number to distinguis outgoing connections.
Definition: nest.h:155
void free(thread t, Node *)
Definition: model.h:237
virtual port send_test_event(Node &, rport, synindex, bool)=0
void set_type_id(index id)
Set the model id on the prototype.
Definition: model.h:169
unsigned char synindex
Unsigned char type for enumerations of synapse types.
Definition: nest.h:115
std::vector< sli::pool > memory_
Memory for all nodes sorted by threads.
Definition: model.h:224
const Name n("n")
Number of synaptic release sites (int >=0) (Tsodyks2_connection)
Definition: nest_names.h:202
pool is a specialized allocator class for many identical small objects.
Definition: allocator.h:50
Base class for all NEST network objects.
Definition: node.h:96
virtual void init_memory_(sli::pool &)=0
Initialize the pool allocator with the Node specific values.
virtual Node * allocate_(void *)=0
Allocate a new object at the specified memory position.
index type_id_
Identifier of the model C++ type.
Definition: model.h:219
virtual Node const & get_prototype(void) const =0
Return const reference to the prototype.
size_t mem_available()
Return the available memory.
Definition: model.cpp:70
void reserve_additional(thread t, size_t n)
Reserve memory for at least n additional Nodes.
Definition: model.cpp:57
int_t thread
Thread index type.
Definition: nest.h:133
virtual bool is_off_grid()=0
virtual size_t get_element_size() const =0
Return the size of the prototype.