14 static const double RANGE = 1.0e-15;
20 "Sends out level of activation on all synapses converging to "
35 "Number of synapses on SynHandler. Duplicate field for num_synapse",
41 "Handles 'process' call. Checks if any spike events are due for"
42 "handling at this timestep, and does learning rule stuff if needed",
45 "Handles 'reinit' call. Initializes all the synapses.",
48 static Finfo* processShared[] =
53 "Shared Finfo to receive Process messages from the clock.",
54 processShared,
sizeof( processShared ) /
sizeof(
Finfo* )
58 static Finfo* synHandlerFinfos[] =
67 "Name",
"SynHandlerBase",
68 "Author",
"Upi Bhalla",
70 "Base class for handling synapse arrays converging onto a given "
71 "channel or integrate-and-fire neuron. This class provides the "
72 "interface for channels/intFires to connect to a range of synapse "
73 "types, including simple synapses, synapses with different "
74 "plasticity rules, and variants yet to be implemented. "
81 sizeof( synHandlerFinfos ) /
sizeof (
Finfo* ),
84 sizeof( doc ) /
sizeof(
string )
133 cout <<
"Warning: Ignored attempt to set " << field <<
136 " to less than " <<
RANGE << endl;
void setNumSynapses(unsigned int num)
virtual void vReinit(const Eref &e, ProcPtr p)=0
virtual Synapse * vGetSynapse(unsigned int i)=0
unsigned int getNumSynapses() const
virtual unsigned int vGetNumSynapses() const =0
void reinit(const Eref &e, ProcPtr p)
static const Cinfo * initCinfo()
Synapse * getSynapse(unsigned int i)
static const Cinfo * synHandlerCinfo
virtual void vSetNumSynapses(unsigned int num)=0
virtual ~SynHandlerBase()
bool rangeWarning(const string &field, double value)
static SrcFinfo1< double > * activationOut()
static const double RANGE
virtual void vProcess(const Eref &e, ProcPtr p)=0
static const Cinfo * initCinfo()
void process(const Eref &e, ProcPtr p)