GeNN  4.9.0
GPU enhanced Neuronal Networks (GeNN)
CurrentSource Class Reference

#include <currentSource.h>

Inheritance diagram for CurrentSource:
CurrentSourceInternal

Public Member Functions

 CurrentSource (const CurrentSource &)=delete
 
 CurrentSource ()=delete
 
void setVarLocation (const std::string &varName, VarLocation loc)
 Set location of current source state variable. More...
 
void setExtraGlobalParamLocation (const std::string &paramName, VarLocation loc)
 Set location of extra global parameter. More...
 
const std::string & getName () const
 
const CurrentSourceModels::BasegetCurrentSourceModel () const
 Gets the current source model used by this group. More...
 
const std::vector< double > & getParams () const
 
const std::vector< Models::VarInit > & getVarInitialisers () const
 
VarLocation getVarLocation (const std::string &varName) const
 Get variable location for current source model state variable. More...
 
VarLocation getVarLocation (size_t index) const
 Get variable location for current source model state variable. More...
 
VarLocation getExtraGlobalParamLocation (const std::string &paramName) const
 Get location of neuron model extra global parameter by name. More...
 
VarLocation getExtraGlobalParamLocation (size_t index) const
 Get location of neuron model extra global parameter by omdex. More...
 

Protected Member Functions

 CurrentSource (const std::string &name, const CurrentSourceModels::Base *currentSourceModel, const std::vector< double > &params, const std::vector< Models::VarInit > &varInitialisers, const NeuronGroupInternal *trgNeuronGroup, VarLocation defaultVarLocation, VarLocation defaultExtraGlobalParamLocation)
 
void initDerivedParams (double dt)
 
const NeuronGroupInternalgetTrgNeuronGroup () const
 
const std::vector< double > & getDerivedParams () const
 
bool isSimRNGRequired () const
 Does this current source require an RNG to simulate. More...
 
bool isInitRNGRequired () const
 Does this current source group require an RNG for it's init code. More...
 
bool isZeroCopyEnabled () const
 
boost::uuids::detail::sha1::digest_type getHashDigest () const
 Updates hash with current source. More...
 
boost::uuids::detail::sha1::digest_type getInitHashDigest () const
 Updates hash with current source initialisation. More...
 
boost::uuids::detail::sha1::digest_type getVarLocationHashDigest () const
 

Constructor & Destructor Documentation

◆ CurrentSource() [1/3]

CurrentSource::CurrentSource ( const CurrentSource )
delete

◆ CurrentSource() [2/3]

CurrentSource::CurrentSource ( )
delete

◆ CurrentSource() [3/3]

CurrentSource::CurrentSource ( const std::string &  name,
const CurrentSourceModels::Base currentSourceModel,
const std::vector< double > &  params,
const std::vector< Models::VarInit > &  varInitialisers,
const NeuronGroupInternal trgNeuronGroup,
VarLocation  defaultVarLocation,
VarLocation  defaultExtraGlobalParamLocation 
)
protected

Member Function Documentation

◆ getCurrentSourceModel()

const CurrentSourceModels::Base* CurrentSource::getCurrentSourceModel ( ) const
inline

Gets the current source model used by this group.

◆ getDerivedParams()

const std::vector<double>& CurrentSource::getDerivedParams ( ) const
inlineprotected

◆ getExtraGlobalParamLocation() [1/2]

VarLocation CurrentSource::getExtraGlobalParamLocation ( const std::string &  paramName) const

Get location of neuron model extra global parameter by name.

This is only used by extra global parameters which are pointers

◆ getExtraGlobalParamLocation() [2/2]

VarLocation CurrentSource::getExtraGlobalParamLocation ( size_t  index) const
inline

Get location of neuron model extra global parameter by omdex.

This is only used by extra global parameters which are pointers

◆ getHashDigest()

boost::uuids::detail::sha1::digest_type CurrentSource::getHashDigest ( ) const
protected

Updates hash with current source.

NOTE: this can only be called after model is finalized

◆ getInitHashDigest()

boost::uuids::detail::sha1::digest_type CurrentSource::getInitHashDigest ( ) const
protected

Updates hash with current source initialisation.

NOTE: this can only be called after model is finalized

◆ getName()

const std::string& CurrentSource::getName ( ) const
inline

◆ getParams()

const std::vector<double>& CurrentSource::getParams ( ) const
inline

◆ getTrgNeuronGroup()

const NeuronGroupInternal* CurrentSource::getTrgNeuronGroup ( ) const
inlineprotected

◆ getVarInitialisers()

const std::vector<Models::VarInit>& CurrentSource::getVarInitialisers ( ) const
inline

◆ getVarLocation() [1/2]

VarLocation CurrentSource::getVarLocation ( const std::string &  varName) const

Get variable location for current source model state variable.

◆ getVarLocation() [2/2]

VarLocation CurrentSource::getVarLocation ( size_t  index) const
inline

Get variable location for current source model state variable.

◆ getVarLocationHashDigest()

boost::uuids::detail::sha1::digest_type CurrentSource::getVarLocationHashDigest ( ) const
protected

◆ initDerivedParams()

void CurrentSource::initDerivedParams ( double  dt)
protected

◆ isInitRNGRequired()

bool CurrentSource::isInitRNGRequired ( ) const
protected

Does this current source group require an RNG for it's init code.

◆ isSimRNGRequired()

bool CurrentSource::isSimRNGRequired ( ) const
protected

Does this current source require an RNG to simulate.

◆ isZeroCopyEnabled()

bool CurrentSource::isZeroCopyEnabled ( ) const
protected

◆ setExtraGlobalParamLocation()

void CurrentSource::setExtraGlobalParamLocation ( const std::string &  paramName,
VarLocation  loc 
)

Set location of extra global parameter.

This is ignored for simulations on hardware with a single memory space and only applies to extra global parameters which are pointers.

◆ setVarLocation()

void CurrentSource::setVarLocation ( const std::string &  varName,
VarLocation  loc 
)

Set location of current source state variable.


The documentation for this class was generated from the following files: