Class implementing common interface and properties common for all devices. More...
#include <device.h>
Classes | |
| struct | Parameters_ |
| Independent parameters of the model. More... | |
| struct | Variables_ |
| Internal variables of the model. More... | |
Public Member Functions | |
| Device () | |
| Device (const Device &n) | |
| virtual | ~Device () |
| virtual void | init_state () |
| Reset dynamic state to that of model. | |
| virtual void | init_buffers () |
| Reset buffers. | |
| virtual void | pre_run_hook () |
| Set internal variables before calls to SimulationManager::run() | |
| virtual void | get_status (Dictionary &) const |
| virtual void | set_status (const Dictionary &) |
| virtual bool | is_active (Time const &T) const =0 |
| Returns true if the device is active at the given time stamp. | |
| long | get_t_min_ () const |
| Return lower limit in steps. | |
| long | get_t_max_ () const |
| Return upper limit in steps. | |
| Time const & | get_origin () const |
| Time const & | get_start () const |
| Time const & | get_stop () const |
Private Attributes | |
| Parameters_ | P_ |
| Variables_ | V_ |
Class implementing common interface and properties common for all devices.
This class provides a common interface for all derived device classes. Each class derived from Node and implementing a device, should have a member derived from class Device. This member will contribute the implementation of device specific properties.
This class manages the properties common to all devices, namely origin, start and stop of the time window during which the device is active and the optional device label. The precise semantics of when the device is active depend on the type of device and are defined in subclasses.
| nest::Device::Device | ( | ) |
| nest::Device::Device | ( | const Device & | n | ) |
|
inlinevirtual |
|
inline |
References nest::Device::Parameters_::origin_, and P_.
Referenced by nest::RecordingBackendSIONlib::enroll(), nest::poisson_generator_ps::pre_run_hook(), nest::spike_generator::set_data_from_stimulation_backend(), nest::spike_generator::set_status(), nest::spike_train_injector::set_status(), nest::poisson_generator_ps::update(), nest::spike_generator::update(), and nest::spike_train_injector::update().
|
inline |
References P_, and nest::Device::Parameters_::start_.
Referenced by nest::RecordingBackendSIONlib::enroll(), nest::poisson_generator_ps::pre_run_hook(), and nest::poisson_generator_ps::update().
|
inlinevirtual |
Reimplemented in nest::ac_generator, nest::dc_generator, nest::gamma_sup_generator, nest::inhomogeneous_poisson_generator, nest::mip_generator, nest::multimeter, nest::noise_generator, nest::poisson_generator, nest::poisson_generator_ps, nest::ppd_sup_generator, nest::pulsepacket_generator, nest::sinusoidal_poisson_generator, nest::spike_generator, nest::spike_recorder, nest::spike_train_injector, nest::spin_detector, nest::step_current_generator, nest::step_rate_generator, nest::weight_recorder, nest::RecordingDevice, and nest::StimulationDevice.
References nest::Device::Parameters_::get(), and P_.
Referenced by nest::correlation_detector::get_status(), nest::correlomatrix_detector::get_status(), nest::correlospinmatrix_detector::get_status(), nest::spike_train_injector::get_status(), nest::RecordingDevice::get_status(), and nest::StimulationDevice::get_status().
|
inline |
References P_, and nest::Device::Parameters_::stop_.
Referenced by nest::RecordingBackendSIONlib::enroll(), and nest::poisson_generator_ps::update().
|
inline |
Return upper limit in steps.
References nest::Device::Variables_::t_max_, and V_.
Referenced by nest::spike_train_injector::is_active(), nest::StimulationDevice::is_active(), nest::PseudoRecordingDevice::is_active(), nest::RecordingDevice::is_active(), and nest::spike_train_injector::update().
|
inline |
Return lower limit in steps.
References nest::Device::Variables_::t_min_, and V_.
Referenced by nest::spike_train_injector::is_active(), nest::StimulationDevice::is_active(), nest::PseudoRecordingDevice::is_active(), nest::RecordingDevice::is_active(), and nest::spike_train_injector::update().
|
inlinevirtual |
Reset buffers.
Reimplemented in nest::StimulationDevice.
Referenced by nest::correlation_detector::init_buffers_(), nest::correlomatrix_detector::init_buffers_(), nest::correlospinmatrix_detector::init_buffers_(), and nest::poisson_generator_ps::init_buffers_().
|
inlinevirtual |
Reset dynamic state to that of model.
Reimplemented in nest::StimulationDevice.
Referenced by nest::correlation_detector::init_state_(), nest::correlomatrix_detector::init_state_(), and nest::correlospinmatrix_detector::init_state_().
|
pure virtual |
Returns true if the device is active at the given time stamp.
Semantics are implemented by subclasses.
Implemented in nest::spike_train_injector, nest::StimulationDevice, nest::PseudoRecordingDevice, and nest::RecordingDevice.
|
virtual |
Set internal variables before calls to SimulationManager::run()
Reimplemented in nest::RecordingDevice, nest::StimulationDevice, nest::ac_generator, nest::dc_generator, nest::gamma_sup_generator, nest::inhomogeneous_poisson_generator, nest::mip_generator, nest::multimeter, nest::noise_generator, nest::poisson_generator, nest::poisson_generator_ps, nest::ppd_sup_generator, nest::pulsepacket_generator, nest::sinusoidal_poisson_generator, nest::spike_generator, nest::spike_recorder, nest::spike_train_injector, nest::spin_detector, nest::step_current_generator, nest::step_rate_generator, nest::weight_recorder, nest::StimulationDevice, nest::RecordingDevice, and nest::StimulationDevice.
References nest::Device::Parameters_::origin_, P_, nest::Device::Parameters_::start_, nest::Device::Parameters_::stop_, nest::Device::Variables_::t_max_, nest::Device::Variables_::t_min_, and V_.
Referenced by nest::correlation_detector::pre_run_hook(), nest::correlomatrix_detector::pre_run_hook(), nest::correlospinmatrix_detector::pre_run_hook(), nest::spike_train_injector::pre_run_hook(), nest::StimulationDevice::pre_run_hook(), and nest::RecordingDevice::pre_run_hook().
|
inlinevirtual |
Reimplemented in nest::ac_generator, nest::dc_generator, nest::gamma_sup_generator, nest::inhomogeneous_poisson_generator, nest::mip_generator, nest::multimeter, nest::noise_generator, nest::poisson_generator, nest::poisson_generator_ps, nest::ppd_sup_generator, nest::pulsepacket_generator, nest::sinusoidal_poisson_generator, nest::spike_generator, nest::spike_recorder, nest::spike_train_injector, nest::spin_detector, nest::step_current_generator, nest::step_rate_generator, nest::weight_recorder, nest::RecordingDevice, and nest::StimulationDevice.
References P_, and nest::Device::Parameters_::set().
Referenced by nest::correlation_detector::set_status(), nest::correlomatrix_detector::set_status(), nest::correlospinmatrix_detector::set_status(), nest::spike_train_injector::set_status(), nest::RecordingDevice::set_status(), and nest::StimulationDevice::set_status().
|
private |
Referenced by get_origin(), get_start(), get_status(), get_stop(), pre_run_hook(), and set_status().
|
private |
Referenced by get_t_max_(), get_t_min_(), and pre_run_hook().