NEST main@caf0ae8
 
Loading...
Searching...
No Matches
proxynode.h
Go to the documentation of this file.
1/*
2 * proxynode.h
3 *
4 * This file is part of NEST.
5 *
6 * Copyright (C) 2004 The NEST Initiative
7 *
8 * NEST is free software: you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation, either version 2 of the License, or
11 * (at your option) any later version.
12 *
13 * NEST is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with NEST. If not, see <http://www.gnu.org/licenses/>.
20 *
21 */
22
23#ifndef PROXYNODE_H
24#define PROXYNODE_H
25
26// Includes from nestkernel:
27#include "node.h"
28
29namespace nest
30{
31class SpikeEvent;
32class CurrentEvent;
33
41class proxynode : public Node
42{
43
44public:
46 : Node()
47 {
48 set_frozen_( true );
49 }
50
58 proxynode( size_t, size_t, size_t );
59
69 using Node::handle;
71
72 size_t send_test_event( Node&, size_t, synindex, bool ) override;
73
75
82 SignalType sends_signal() const override;
83
85
87
89
91
92 void sends_secondary_event( SICEvent& ) override;
93
94 void
95 handle( SpikeEvent& ) override
96 {
97 }
98
99 void get_status( Dictionary& ) const override;
100
109 void
110 set_status( const Dictionary& ) override
111 {
112 assert( false );
113 }
114
115 bool is_proxy() const override;
116
117private:
118 void
119 init_state_() override
120 {
121 }
122 void
123 init_buffers_() override
124 {
125 }
126 void
127 pre_run_hook() override
128 {
129 }
130 void
131 update( Time const&, const long, const long ) override
132 {
133 }
134};
135
136inline bool
138{
139 return true;
140}
141
142} // namespace
143
144#endif /* #ifndef PROXYNODE_H */
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
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 NEST network objects.
Definition node.h:99
void set_frozen_(bool frozen)
Mark node as frozen.
Definition node.h:1085
virtual SignalType sends_signal() const
Definition node.h:963
Event for slow inward current (SIC) connections between astrocytes and neurons.
Definition secondary_event.h:458
Event for spike information.
Definition event.h:418
Definition nest_time.h:135
Proxy to provide Nodes on remote machines.
Definition proxynode.h:42
SignalType sends_signal() const override
This function returns the type of signal this node produces.
Definition proxynode.cpp:86
void set_status(const Dictionary &) override
Proxy nodes have no properties.
Definition proxynode.h:110
bool is_proxy() const override
Returns true if the node is a proxy node.
Definition proxynode.h:137
void init_buffers_() override
Configure persistent internal data structures.
Definition proxynode.h:123
void get_status(Dictionary &) const override
Export properties of the node by setting entries in the status dictionary.
Definition proxynode.cpp:92
size_t send_test_event(Node &, size_t, synindex, bool) override
Send an event to the receiving_node passed as an argument.
Definition proxynode.cpp:43
proxynode()
Definition proxynode.h:45
void update(Time const &, const long, const long) override
Advance the state of the node in time through the given interval.
Definition proxynode.h:131
void init_state_() override
Configure state variables depending on runtime information.
Definition proxynode.h:119
void sends_secondary_event(GapJunctionEvent &) override
Required to check, if source neuron may send a SecondaryEvent.
Definition proxynode.cpp:50
void handle(SpikeEvent &) override
Handle incoming spike events.
Definition proxynode.h:95
void pre_run_hook() override
Re-calculate dependent parameters of the node.
Definition proxynode.h:127
virtual void handle(SpikeEvent &e)
Handle incoming spike events.
Definition node.cpp:265
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
Declarations for base class Node.