26 "Axonal propagation delay to this synapse",
32 "Value field interface to add spike (by assignment) and to "
33 "read the value of the spike on top of the queue.",
39 "Handles arriving spike messages, inserts into event queue.",
42 static Finfo* synapseFinfos[] = {
52 "Author",
"Upi Bhalla",
53 "Description",
"Synapse using ring buffer for events.",
60 sizeof( synapseFinfos ) /
sizeof (
Finfo* ),
63 sizeof( doc ) /
sizeof(
string ),
73 : weight_( 1.0 ), delay_( 0.0 ), handler_( 0 )
106 static bool report =
false;
107 static unsigned int tgtDataIndex = 0;
109 if ( report && e.
dataIndex() == tgtDataIndex ) {
127 const Eref& e,
const string& finfoName,
128 ObjId msg,
unsigned int msgLookup )
130 if ( finfoName ==
"addSpike" ) {
134 unsigned int synapseNumber = sh->
addSynapse();
136 msg,
"fieldIndex", msgLookup, synapseNumber );
146 const Eref& e,
const string& finfoName,
147 ObjId msg,
unsigned int msgLookup )
149 if ( finfoName ==
"addSpike" ) {
static ObjId parent(const Eref &e)
static const Cinfo * synapseCinfo
virtual double getTopSpike(unsigned int index) const =0
unsigned int dataIndex() const
virtual unsigned int addSynapse()=0
unsigned int fieldIndex() const
virtual void addSpike(unsigned int index, double time, double weight)=0
static const Cinfo * initCinfo()
virtual void dropSynapse(unsigned int droppedSynNumber)=0
void addSpike(const Eref &e, double time)
void setHandler(SynHandlerBase *h)
double getTopSpike(const Eref &e) const
static void addMsgCallback(const Eref &e, const string &finfoName, ObjId msg, unsigned int msgLookup)
static const Cinfo * initCinfo()
static void dropMsgCallback(const Eref &e, const string &finfoName, ObjId msg, unsigned int msgLookup)
SynHandlerBase * handler_
static bool set(const ObjId &dest, const string &field, A1 arg1, A2 arg2)