GeNN  3.3.0
GPU enhanced Neuronal Networks (GeNN)
newWeightUpdateModels.h File Reference
#include "newModels.h"
#include "synapseModels.h"

Go to the source code of this file.

Classes

class  WeightUpdateModels::Base
 Base class for all weight update models. More...
 
class  WeightUpdateModels::LegacyWrapper
 Wrapper around legacy weight update models stored in weightUpdateModels array of weightUpdateModel objects. More...
 
class  WeightUpdateModels::StaticPulse
 Pulse-coupled, static synapse. More...
 
class  WeightUpdateModels::StaticPulseDendriticDelay
 Pulse-coupled, static synapse with heterogenous dendritic delays. More...
 
class  WeightUpdateModels::StaticGraded
 Graded-potential, static synapse. More...
 
class  WeightUpdateModels::PiecewiseSTDP
 This is a simple STDP rule including a time delay for the finite transmission speed of the synapse. More...
 

Namespaces

 WeightUpdateModels
 

Macros

#define DECLARE_WEIGHT_UPDATE_MODEL(TYPE, NUM_PARAMS, NUM_VARS, NUM_PRE_VARS, NUM_POST_VARS)
 
#define SET_SIM_CODE(SIM_CODE)   virtual std::string getSimCode() const override{ return SIM_CODE; }
 
#define SET_EVENT_CODE(EVENT_CODE)   virtual std::string getEventCode() const override{ return EVENT_CODE; }
 
#define SET_LEARN_POST_CODE(LEARN_POST_CODE)   virtual std::string getLearnPostCode() const override{ return LEARN_POST_CODE; }
 
#define SET_SYNAPSE_DYNAMICS_CODE(SYNAPSE_DYNAMICS_CODE)   virtual std::string getSynapseDynamicsCode() const override{ return SYNAPSE_DYNAMICS_CODE; }
 
#define SET_EVENT_THRESHOLD_CONDITION_CODE(EVENT_THRESHOLD_CONDITION_CODE)   virtual std::string getEventThresholdConditionCode() const override{ return EVENT_THRESHOLD_CONDITION_CODE; }
 
#define SET_SIM_SUPPORT_CODE(SIM_SUPPORT_CODE)   virtual std::string getSimSupportCode() const override{ return SIM_SUPPORT_CODE; }
 
#define SET_LEARN_POST_SUPPORT_CODE(LEARN_POST_SUPPORT_CODE)   virtual std::string getLearnPostSupportCode() const override{ return LEARN_POST_SUPPORT_CODE; }
 
#define SET_SYNAPSE_DYNAMICS_SUPPORT_CODE(SYNAPSE_DYNAMICS_SUPPORT_CODE)   virtual std::string getSynapseDynamicsSuppportCode() const override{ return SYNAPSE_DYNAMICS_SUPPORT_CODE; }
 
#define SET_PRE_SPIKE_CODE(PRE_SPIKE_CODE)   virtual std::string getPreSpikeCode() const override{ return PRE_SPIKE_CODE; }
 
#define SET_POST_SPIKE_CODE(POST_SPIKE_CODE)   virtual std::string getPostSpikeCode() const override{ return POST_SPIKE_CODE; }
 
#define SET_PRE_VARS(...)   virtual StringPairVec getPreVars() const override{ return __VA_ARGS__; }
 
#define SET_POST_VARS(...)   virtual StringPairVec getPostVars() const override{ return __VA_ARGS__; }
 
#define SET_EXTRA_GLOBAL_PARAMS(...)   virtual StringPairVec getExtraGlobalParams() const override{ return __VA_ARGS__; }
 
#define SET_NEEDS_PRE_SPIKE_TIME(PRE_SPIKE_TIME_REQUIRED)   virtual bool isPreSpikeTimeRequired() const override{ return PRE_SPIKE_TIME_REQUIRED; }
 
#define SET_NEEDS_POST_SPIKE_TIME(POST_SPIKE_TIME_REQUIRED)   virtual bool isPostSpikeTimeRequired() const override{ return POST_SPIKE_TIME_REQUIRED; }
 

Macro Definition Documentation

◆ DECLARE_WEIGHT_UPDATE_MODEL

#define DECLARE_WEIGHT_UPDATE_MODEL (   TYPE,
  NUM_PARAMS,
  NUM_VARS,
  NUM_PRE_VARS,
  NUM_POST_VARS 
)
Value:
DECLARE_SNIPPET(TYPE, NUM_PARAMS) \
#define DECLARE_SNIPPET(TYPE, NUM_PARAMS)
Definition: snippet.h:11
Definition: newModels.h:56

◆ SET_EVENT_CODE

#define SET_EVENT_CODE (   EVENT_CODE)    virtual std::string getEventCode() const override{ return EVENT_CODE; }

◆ SET_EVENT_THRESHOLD_CONDITION_CODE

#define SET_EVENT_THRESHOLD_CONDITION_CODE (   EVENT_THRESHOLD_CONDITION_CODE)    virtual std::string getEventThresholdConditionCode() const override{ return EVENT_THRESHOLD_CONDITION_CODE; }

◆ SET_EXTRA_GLOBAL_PARAMS

#define SET_EXTRA_GLOBAL_PARAMS (   ...)    virtual StringPairVec getExtraGlobalParams() const override{ return __VA_ARGS__; }

◆ SET_LEARN_POST_CODE

#define SET_LEARN_POST_CODE (   LEARN_POST_CODE)    virtual std::string getLearnPostCode() const override{ return LEARN_POST_CODE; }

◆ SET_LEARN_POST_SUPPORT_CODE

#define SET_LEARN_POST_SUPPORT_CODE (   LEARN_POST_SUPPORT_CODE)    virtual std::string getLearnPostSupportCode() const override{ return LEARN_POST_SUPPORT_CODE; }

◆ SET_NEEDS_POST_SPIKE_TIME

#define SET_NEEDS_POST_SPIKE_TIME (   POST_SPIKE_TIME_REQUIRED)    virtual bool isPostSpikeTimeRequired() const override{ return POST_SPIKE_TIME_REQUIRED; }

◆ SET_NEEDS_PRE_SPIKE_TIME

#define SET_NEEDS_PRE_SPIKE_TIME (   PRE_SPIKE_TIME_REQUIRED)    virtual bool isPreSpikeTimeRequired() const override{ return PRE_SPIKE_TIME_REQUIRED; }

◆ SET_POST_SPIKE_CODE

#define SET_POST_SPIKE_CODE (   POST_SPIKE_CODE)    virtual std::string getPostSpikeCode() const override{ return POST_SPIKE_CODE; }

◆ SET_POST_VARS

#define SET_POST_VARS (   ...)    virtual StringPairVec getPostVars() const override{ return __VA_ARGS__; }

◆ SET_PRE_SPIKE_CODE

#define SET_PRE_SPIKE_CODE (   PRE_SPIKE_CODE)    virtual std::string getPreSpikeCode() const override{ return PRE_SPIKE_CODE; }

◆ SET_PRE_VARS

#define SET_PRE_VARS (   ...)    virtual StringPairVec getPreVars() const override{ return __VA_ARGS__; }

◆ SET_SIM_CODE

#define SET_SIM_CODE (   SIM_CODE)    virtual std::string getSimCode() const override{ return SIM_CODE; }

◆ SET_SIM_SUPPORT_CODE

#define SET_SIM_SUPPORT_CODE (   SIM_SUPPORT_CODE)    virtual std::string getSimSupportCode() const override{ return SIM_SUPPORT_CODE; }

◆ SET_SYNAPSE_DYNAMICS_CODE

#define SET_SYNAPSE_DYNAMICS_CODE (   SYNAPSE_DYNAMICS_CODE)    virtual std::string getSynapseDynamicsCode() const override{ return SYNAPSE_DYNAMICS_CODE; }

◆ SET_SYNAPSE_DYNAMICS_SUPPORT_CODE

#define SET_SYNAPSE_DYNAMICS_SUPPORT_CODE (   SYNAPSE_DYNAMICS_SUPPORT_CODE)    virtual std::string getSynapseDynamicsSuppportCode() const override{ return SYNAPSE_DYNAMICS_SUPPORT_CODE; }