Main Page   Modules   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   Related Pages  

punnets_private::tsynapse_messfunc< debug > Class Template Reference
[Synapses]

#include <dneuron.h>

Inheritance diagram for punnets_private::tsynapse_messfunc< debug >:

punnets_common::tsynapse_base punnets_common::taction List of all members.

Public Methods

 tsynapse_messfunc (tneuron_base &isrc, tneuron_ext< debug > &idest, real idelay, func_base *ifunc, message_base *imess, real ilev=0.0)
 tsynapse_messfunc (tneuron_ext< debug > &idest, real idelay, func_base *ifunc, message_base *imess, real ilev=0.0)
virtual void setSrc (tneuron_base &isrc)
 Set the source neuron (presynaptic) of this synapse. A derived class should redefine this method.

virtual tneuron_base & getSrc () const
 Get the source neuron (pre-synaptic). A derived class should redefine this method.

virtual tneuron_ext< debug > & getDest () const
 Get the destination neuron (post-synaptic). A derived class should redefine this method.

virtual void activate (tscheduler &scheduler, ntime_t current_time)
virtual tqueue * queue () const
 Obtain a local event queue of this action.


Detailed Description

template<bool debug>
class punnets_private::tsynapse_messfunc< debug >

Synapse class that sends a message to a function in a tneuron_ext neuron. It is useful for applying an effect of func_expdiff, on which several firing can be calculated by one function and message_add_event_time message.

Definition at line 779 of file dneuron.h.


Constructor & Destructor Documentation

template<bool debug>
punnets_private::tsynapse_messfunc< debug >::tsynapse_messfunc tneuron_base &    isrc,
tneuron_ext< debug > &    idest,
real    idelay,
func_base *    ifunc,
message_base *    imess,
real    ilev = 0.0
[inline]
 

Constructs add-function synapse with the specified source, destination, delay, a pointer to a function, a pointer to a message that is sent for the function at every activation, and immediate pulse level. In the constructor the function is added to the destination neuron.

Definition at line 792 of file dneuron.h.

References punnets_private::tneuron_ext< debug >::addExt(), and punnets_common::real.

00793         : tsynapse_base(idelay), src(&isrc), dest(&idest), func(ifunc), mess(imess), lev(ilev) { dest->addExt(func); }

template<bool debug>
punnets_private::tsynapse_messfunc< debug >::tsynapse_messfunc tneuron_ext< debug > &    idest,
real    idelay,
func_base *    ifunc,
message_base *    imess,
real    ilev = 0.0
[inline]
 

Constructs add-function synapse with the specified destination, delay, a pointer to a function, a pointer to a message that is sent for the function at every activation, and immediate pulse level. In the constructor the function is added to the destination neuron.

Definition at line 797 of file dneuron.h.

References punnets_private::tneuron_ext< debug >::addExt(), and punnets_common::real.

00798         : tsynapse_base(idelay), src(NULL), dest(&idest), func(ifunc), mess(imess), lev(ilev) { dest->addExt(func); }


Member Function Documentation

template<bool debug>
virtual void punnets_private::tsynapse_messfunc< debug >::activate tscheduler &    scheduler,
ntime_t    current_time
[inline, virtual]
 

When activated, the synapse sends the message to the function and sends the pulse to the destination neuron (to notive the change of the function).

Implements punnets_common::tsynapse_base.

Definition at line 809 of file dneuron.h.

References punnets_common::tneuron_base::getName(), punnets_common::ntime_t, and punnets_private::tneuron_ext< debug >::pulseArrive().

00810     {
00811         if( getDeb() )
00812             std::cout << std::setw(9) << std::setiosflags(std::ios::fixed) << std::setprecision(debug_precision) << current_time << " " << dest->getName() << " Pulse Arrived (func) from " << src->getName() << std::endl;
00813         func->processMessage( current_time, *mess );
00814 //      cout << f->getDescription() << endl;
00815         dest->pulseArrive( scheduler, current_time, lev );
00816     }


The documentation for this class was generated from the following file:
Generated on Mon Jun 16 15:42:30 2003 for Punnets by doxygen1.2.18