MOOSE - Multiscale Object Oriented Simulation Environment
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
SynHandlerBase.h
Go to the documentation of this file.
1 /**********************************************************************
2 ** This program is part of 'MOOSE', the
3 ** Messaging Object Oriented Simulation Environment.
4 ** Copyright (C) 2013 Upinder S. Bhalla. and NCBS
5 ** It is made available under the terms of the
6 ** GNU Lesser General Public License version 2.1
7 ** See the file COPYING.LIB for the full notice.
8 **********************************************************************/
9 
10 #ifndef _SYN_HANDLER_BASE_H
11 #define _SYN_HANDLER_BASE_H
12 
13 
14 class Synapse;
23 {
24 public:
26  virtual ~SynHandlerBase();
27 
29  // Field assignment stuff.
31 
35  void setNumSynapses( unsigned int num );
36 
40  unsigned int getNumSynapses() const;
41 
45  Synapse* getSynapse( unsigned int i );
47 
48  void process( const Eref& e, ProcPtr p );
49  void reinit( const Eref& e, ProcPtr p );
50 
55  bool rangeWarning( const string& field, double value );
56 
58 
65  virtual unsigned int addSynapse() = 0;
66 
73  virtual void dropSynapse( unsigned int droppedSynNumber ) = 0;
74 
80  virtual void addSpike(
81  unsigned int index, double time, double weight ) = 0;
82  virtual double getTopSpike( unsigned int index ) const = 0;
84  // Virtual func definitions for fields.
86  virtual void vSetNumSynapses( unsigned int num ) = 0;
87  virtual unsigned int vGetNumSynapses() const = 0;
88  virtual Synapse* vGetSynapse( unsigned int i ) = 0;
89  virtual void vProcess( const Eref& e, ProcPtr p ) = 0;
90  virtual void vReinit( const Eref& e, ProcPtr p ) = 0;
93  static const Cinfo* initCinfo();
94 
95 private:
96 
97 };
98 
99 #endif // _SYN_HANDLER_BASE_H
uint32_t value
Definition: moosemodule.h:42
void setNumSynapses(unsigned int num)
virtual double getTopSpike(unsigned int index) const =0
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
virtual unsigned int addSynapse()=0
void reinit(const Eref &e, ProcPtr p)
virtual void addSpike(unsigned int index, double time, double weight)=0
static const Cinfo * initCinfo()
Synapse * getSynapse(unsigned int i)
virtual void dropSynapse(unsigned int droppedSynNumber)=0
Definition: Eref.h:26
virtual void vSetNumSynapses(unsigned int num)=0
virtual ~SynHandlerBase()
bool rangeWarning(const string &field, double value)
static SrcFinfo1< double > * activationOut()
virtual void vProcess(const Eref &e, ProcPtr p)=0
void process(const Eref &e, ProcPtr p)
Definition: Cinfo.h:18