GeNN  4.0.0
GPU enhanced Neuronal Networks (GeNN)
synapseGroupInternal.h
Go to the documentation of this file.
1 #pragma once
2 
3 // GeNN includes
4 #include "synapseGroup.h"
5 
6 //------------------------------------------------------------------------
7 // SynapseGroupInternal
8 //------------------------------------------------------------------------
10 {
11 public:
12  SynapseGroupInternal(const std::string name, SynapseMatrixType matrixType, unsigned int delaySteps,
13  const WeightUpdateModels::Base *wu, const std::vector<double> &wuParams, const std::vector<Models::VarInit> &wuVarInitialisers, const std::vector<Models::VarInit> &wuPreVarInitialisers, const std::vector<Models::VarInit> &wuPostVarInitialisers,
14  const PostsynapticModels::Base *ps, const std::vector<double> &psParams, const std::vector<Models::VarInit> &psVarInitialisers,
15  NeuronGroupInternal *srcNeuronGroup, NeuronGroupInternal *trgNeuronGroup,
16  const InitSparseConnectivitySnippet::Init &connectivityInitialiser,
17  VarLocation defaultVarLocation, VarLocation defaultExtraGlobalParamLocation, VarLocation defaultSparseConnectivityLocation)
18  : SynapseGroup(name, matrixType, delaySteps, wu, wuParams, wuVarInitialisers, wuPreVarInitialisers, wuPostVarInitialisers,
19  ps, psParams, psVarInitialisers, srcNeuronGroup, trgNeuronGroup,
20  connectivityInitialiser, defaultVarLocation, defaultExtraGlobalParamLocation, defaultSparseConnectivityLocation)
21  {
22  // Add references to target and source neuron groups
23  trgNeuronGroup->addInSyn(this);
24  srcNeuronGroup->addOutSyn(this);
25  }
26 
40 };
Definition: neuronGroupInternal.h:9
NeuronGroupInternal * getSrcNeuronGroup()
Definition: synapseGroup.h:236
VarLocation
< Flags defining which memory space variables should be allocated in
Definition: variableMode.h:10
Definition: initSparseConnectivitySnippet.h:69
void initDerivedParams(double dt)
Definition: synapseGroup.cc:368
Base class for all postsynaptic models.
Definition: postsynapticModels.h:23
const std::vector< double > & getWUDerivedParams() const
Definition: synapseGroup.h:254
bool isEventThresholdReTestRequired() const
Definition: synapseGroup.h:259
NeuronGroupInternal * getTrgNeuronGroup()
Definition: synapseGroup.h:237
std::string getPresynapticAxonalDelaySlot(const std::string &devPrefix) const
Definition: synapseGroup.cc:411
Definition: synapseGroupInternal.h:9
Base class for all weight update models.
Definition: weightUpdateModels.h:39
const std::string & getPSModelTargetName() const
Definition: synapseGroup.h:261
Definition: synapseGroup.h:23
void setEventThresholdReTestRequired(bool req)
Definition: synapseGroup.h:239
bool isPSModelMerged() const
Definition: synapseGroup.h:262
std::string getDendriticDelayOffset(const std::string &devPrefix, const std::string &offset="") const
Definition: synapseGroup.cc:435
void addOutSyn(SynapseGroupInternal *synapseGroup)
Definition: neuronGroup.h:134
SynapseMatrixType
Definition: synapseMatrixType.h:23
void setPSModelMergeTarget(const std::string &targetName)
Definition: synapseGroup.h:241
std::string getPostsynapticBackPropDelaySlot(const std::string &devPrefix) const
Definition: synapseGroup.cc:423
void addInSyn(SynapseGroupInternal *synapseGroup)
Definition: neuronGroup.h:133
const std::vector< double > & getPSDerivedParams() const
Does the event threshold needs to be retested in the synapse kernel?
Definition: synapseGroup.h:255
SynapseGroupInternal(const std::string name, SynapseMatrixType matrixType, unsigned int delaySteps, const WeightUpdateModels::Base *wu, const std::vector< double > &wuParams, const std::vector< Models::VarInit > &wuVarInitialisers, const std::vector< Models::VarInit > &wuPreVarInitialisers, const std::vector< Models::VarInit > &wuPostVarInitialisers, const PostsynapticModels::Base *ps, const std::vector< double > &psParams, const std::vector< Models::VarInit > &psVarInitialisers, NeuronGroupInternal *srcNeuronGroup, NeuronGroupInternal *trgNeuronGroup, const InitSparseConnectivitySnippet::Init &connectivityInitialiser, VarLocation defaultVarLocation, VarLocation defaultExtraGlobalParamLocation, VarLocation defaultSparseConnectivityLocation)
Definition: synapseGroupInternal.h:12