GeNN  4.9.0
GPU enhanced Neuronal Networks (GeNN)
customUpdateInternal.h
Go to the documentation of this file.
1 #pragma once
2 
3 // GeNN includes
4 #include "customUpdate.h"
5 
6 //------------------------------------------------------------------------
7 // CustomUpdateInternal
8 //------------------------------------------------------------------------
10 {
11 public:
12  CustomUpdateInternal(const std::string &name, const std::string &updateGroupName,
13  const CustomUpdateModels::Base *customUpdateModel, const std::vector<double> &params,
14  const std::vector<Models::VarInit> &varInitialisers, const std::vector<Models::VarReference> &varReferences,
15  const std::vector<Models::EGPReference> &egpReferences, VarLocation defaultVarLocation,
16  VarLocation defaultExtraGlobalParamLocation)
17  : CustomUpdate(name, updateGroupName, customUpdateModel, params, varInitialisers, varReferences,
18  egpReferences, defaultVarLocation, defaultExtraGlobalParamLocation)
19  {
20  }
21 
29 
36 };
37 
38 //------------------------------------------------------------------------
39 // CustomUpdateInternal
40 //------------------------------------------------------------------------
42 {
43 public:
44  CustomUpdateWUInternal(const std::string &name, const std::string &updateGroupName,
45  const CustomUpdateModels::Base *customUpdateModel, const std::vector<double> &params,
46  const std::vector<Models::VarInit> &varInitialisers, const std::vector<Models::WUVarReference> &varReferences,
47  const std::vector<Models::EGPReference> &egpReferences, VarLocation defaultVarLocation,
48  VarLocation defaultExtraGlobalParamLocation)
49  : CustomUpdateWU(name, updateGroupName, customUpdateModel, params, varInitialisers, varReferences,
50  egpReferences, defaultVarLocation, defaultExtraGlobalParamLocation)
51  {
52  }
53 
61 
68 };
boost::uuids::detail::sha1::digest_type getVarLocationHashDigest() const
Definition: customUpdate.cc:113
VarLocation
< Flags defining which memory space variables should be allocated in
Definition: variableMode.h:10
const std::vector< double > & getDerivedParams() const
Definition: customUpdate.h:66
bool isBatched() const
Is this custom update batched i.e. run in parallel across model batches.
Definition: customUpdate.h:74
bool isBatchReduction() const
Definition: customUpdate.h:223
Definition: customUpdate.h:199
CustomUpdateInternal(const std::string &name, const std::string &updateGroupName, const CustomUpdateModels::Base *customUpdateModel, const std::vector< double > &params, const std::vector< Models::VarInit > &varInitialisers, const std::vector< Models::VarReference > &varReferences, const std::vector< Models::EGPReference > &egpReferences, VarLocation defaultVarLocation, VarLocation defaultExtraGlobalParamLocation)
Definition: customUpdateInternal.h:12
void finalize(unsigned int batchSize)
Definition: customUpdate.cc:310
Definition: customUpdate.h:252
bool isZeroCopyEnabled() const
Definition: customUpdate.cc:88
boost::uuids::detail::sha1::digest_type getInitHashDigest() const
Updates hash with custom update.
Definition: customUpdate.cc:344
Base class for all current source models.
Definition: customUpdateModels.h:31
bool isNeuronReduction() const
Definition: customUpdate.h:224
boost::uuids::detail::sha1::digest_type getInitHashDigest() const
Updates hash with custom update.
Definition: customUpdate.cc:230
const SynapseGroupInternal * getSynapseGroup() const
Definition: customUpdate.h:278
void initDerivedParams(double dt)
Definition: customUpdate.cc:60
const NeuronGroup * getDelayNeuronGroup() const
Definition: customUpdate.h:235
bool isTransposeOperation() const
Definition: customUpdate.cc:316
boost::uuids::detail::sha1::digest_type getHashDigest() const
Updates hash with custom update.
Definition: customUpdate.cc:323
void finalize(unsigned int batchSize)
Definition: customUpdate.cc:182
Definition: customUpdateInternal.h:41
CustomUpdateWUInternal(const std::string &name, const std::string &updateGroupName, const CustomUpdateModels::Base *customUpdateModel, const std::vector< double > &params, const std::vector< Models::VarInit > &varInitialisers, const std::vector< Models::WUVarReference > &varReferences, const std::vector< Models::EGPReference > &egpReferences, VarLocation defaultVarLocation, VarLocation defaultExtraGlobalParamLocation)
Definition: customUpdateInternal.h:44
bool isBatchReduction() const
Definition: customUpdate.h:275
boost::uuids::detail::sha1::digest_type getHashDigest() const
Updates hash with custom update.
Definition: customUpdate.cc:203
bool isReduction(const std::vector< V > &varRefs, VarAccessDuplication duplication) const
Definition: customUpdate.h:87
Definition: customUpdateInternal.h:9
bool isPerNeuron() const
Definition: customUpdate.h:225
bool isInitRNGRequired() const
Does this current source group require an RNG for it&#39;s init code.
Definition: customUpdate.cc:78