#include <AnalogLevelBasedInputNeuron.h>
Public Member Functions | |
AnalogLevelBasedInputNeuron () | |
AnalogLevelBasedInputNeuron (const std::vector< double > &levels, const std::vector< double > &durations) | |
virtual | ~AnalogLevelBasedInputNeuron () |
void | setAnalogValues (const std::vector< double > &levels, const std::vector< double > &durations) |
const std::vector< double > & | getLevels () const |
const std::vector< double > & | getDurations () const |
virtual double | getAnalogOutput (analog_port_id_t port=0) const |
Return the analog value currently associated with the given port. | |
virtual int | advance (AdvanceInfo const &ai) |
Calculate the next state and output/propagate the result to succesors/outgoing objects. | |
virtual int | reset (double dt) |
Called at the beginning of a simulation at t=0. | |
virtual double | getManagedDelay () const |
virtual int | nSpikeInputPorts () const |
virtual int | nSpikeOutputPorts () const |
virtual int | nAnalogInputPorts () const |
virtual int | nAnalogOutputPorts () const |
virtual PortType | outputPortType (port_t o) const |
virtual PortType | inputPortType (port_t i) const |
Protected Attributes | |
std::vector< double > | levels |
std::vector< double > | durations |
unsigned | curr_level |
unsigned | curr_timestep |
unsigned | curr_numsteps |
double | Vm |
It replays the analog signal from the beginning if simulation time is longer than the complete analog signal duration.
Definition at line 15 of file AnalogLevelBasedInputNeuron.h.
AnalogLevelBasedInputNeuron::AnalogLevelBasedInputNeuron | ( | ) |
Definition at line 7 of file AnalogLevelBasedInputNeuron.cpp.
References curr_level, and curr_timestep.
AnalogLevelBasedInputNeuron::AnalogLevelBasedInputNeuron | ( | const std::vector< double > & | levels, | |
const std::vector< double > & | durations | |||
) |
AnalogLevelBasedInputNeuron::~AnalogLevelBasedInputNeuron | ( | ) | [virtual] |
Definition at line 19 of file AnalogLevelBasedInputNeuron.cpp.
void AnalogLevelBasedInputNeuron::setAnalogValues | ( | const std::vector< double > & | levels, | |
const std::vector< double > & | durations | |||
) |
const vector< double > & AnalogLevelBasedInputNeuron::getLevels | ( | ) | const |
const vector< double > & AnalogLevelBasedInputNeuron::getDurations | ( | ) | const |
double AnalogLevelBasedInputNeuron::getAnalogOutput | ( | analog_port_id_t | port = 0 |
) | const [virtual] |
Return the analog value currently associated with the given port.
Reimplemented from SimObject.
Definition at line 40 of file AnalogLevelBasedInputNeuron.cpp.
References curr_level, and levels.
int AnalogLevelBasedInputNeuron::advance | ( | AdvanceInfo const & | ) | [virtual] |
Calculate the next state and output/propagate the result to succesors/outgoing objects.
The return value of advance contains several bits of information which can be decoded with the bit masks ADVANCEFLAG_* like ADVANCEFLAG_HASSPIKED and ADVANCEFLAG_DEACTIVATE.
Reimplemented from SimObject.
Definition at line 46 of file AnalogLevelBasedInputNeuron.cpp.
References curr_level, curr_numsteps, curr_timestep, AdvanceInfo::dt, durations, Time::in_sec(), levels, and Vm.
Called at the beginning of a simulation at t=0.
Reimplemented from SimObject.
Definition at line 63 of file AnalogLevelBasedInputNeuron.cpp.
References curr_level, curr_numsteps, curr_timestep, and durations.
virtual double AnalogLevelBasedInputNeuron::getManagedDelay | ( | ) | const [inline, virtual] |
virtual int AnalogLevelBasedInputNeuron::nSpikeInputPorts | ( | ) | const [inline, virtual] |
virtual int AnalogLevelBasedInputNeuron::nSpikeOutputPorts | ( | ) | const [inline, virtual] |
virtual int AnalogLevelBasedInputNeuron::nAnalogInputPorts | ( | ) | const [inline, virtual] |
virtual int AnalogLevelBasedInputNeuron::nAnalogOutputPorts | ( | ) | const [inline, virtual] |
Reimplemented from SimObject.
Definition at line 43 of file AnalogLevelBasedInputNeuron.h.
References SimObject::analog.
std::vector<double> AnalogLevelBasedInputNeuron::levels [protected] |
Definition at line 44 of file AnalogLevelBasedInputNeuron.h.
Referenced by advance(), getAnalogOutput(), and getLevels().
std::vector<double> AnalogLevelBasedInputNeuron::durations [protected] |
Definition at line 49 of file AnalogLevelBasedInputNeuron.h.
Referenced by advance(), getDurations(), and reset().
unsigned AnalogLevelBasedInputNeuron::curr_level [protected] |
Definition at line 50 of file AnalogLevelBasedInputNeuron.h.
Referenced by advance(), AnalogLevelBasedInputNeuron(), getAnalogOutput(), and reset().
unsigned AnalogLevelBasedInputNeuron::curr_timestep [protected] |
Definition at line 51 of file AnalogLevelBasedInputNeuron.h.
Referenced by advance(), AnalogLevelBasedInputNeuron(), and reset().
unsigned AnalogLevelBasedInputNeuron::curr_numsteps [protected] |
double AnalogLevelBasedInputNeuron::Vm [protected] |