GeNN  4.9.0
GPU enhanced Neuronal Networks (GeNN)
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
synapseMatrixType.h File Reference

Go to the source code of this file.

Enumerations

enum  SynapseMatrixConnectivity : unsigned int {
  SynapseMatrixConnectivity::DENSE = (1 << 0), SynapseMatrixConnectivity::BITMASK = (1 << 1), SynapseMatrixConnectivity::SPARSE = (1 << 2), SynapseMatrixConnectivity::PROCEDURAL = (1 << 3),
  SynapseMatrixConnectivity::TOEPLITZ = (1 << 4)
}
 Flags defining differnet types of synaptic matrix connectivity. More...
 
enum  SynapseMatrixWeight : unsigned int {
  SynapseMatrixWeight::GLOBAL = (1 << 5), SynapseMatrixWeight::INDIVIDUAL = (1 << 6), SynapseMatrixWeight::PROCEDURAL = (1 << 7), SynapseMatrixWeight::INDIVIDUAL_PSM = (1 << 8),
  SynapseMatrixWeight::KERNEL = (1 << 9)
}
 Flags defining different types of synaptic matrix connectivity. More...
 
enum  SynapseMatrixType : unsigned int {
  SynapseMatrixType::DENSE_GLOBALG = static_cast<unsigned int>(SynapseMatrixConnectivity::DENSE) | static_cast<unsigned int>(SynapseMatrixWeight::GLOBAL), SynapseMatrixType::DENSE_GLOBALG_INDIVIDUAL_PSM = static_cast<unsigned int>(SynapseMatrixConnectivity::DENSE) | static_cast<unsigned int>(SynapseMatrixWeight::GLOBAL) | static_cast<unsigned int>(SynapseMatrixWeight::INDIVIDUAL_PSM), SynapseMatrixType::DENSE_INDIVIDUALG = static_cast<unsigned int>(SynapseMatrixConnectivity::DENSE) | static_cast<unsigned int>(SynapseMatrixWeight::INDIVIDUAL) | static_cast<unsigned int>(SynapseMatrixWeight::INDIVIDUAL_PSM), SynapseMatrixType::DENSE_PROCEDURALG = static_cast<unsigned int>(SynapseMatrixConnectivity::DENSE) | static_cast<unsigned int>(SynapseMatrixWeight::PROCEDURAL) | static_cast<unsigned int>(SynapseMatrixWeight::INDIVIDUAL_PSM),
  SynapseMatrixType::BITMASK_GLOBALG = static_cast<unsigned int>(SynapseMatrixConnectivity::BITMASK) | static_cast<unsigned int>(SynapseMatrixWeight::GLOBAL), SynapseMatrixType::BITMASK_GLOBALG_INDIVIDUAL_PSM = static_cast<unsigned int>(SynapseMatrixConnectivity::BITMASK) | static_cast<unsigned int>(SynapseMatrixWeight::GLOBAL) | static_cast<unsigned int>(SynapseMatrixWeight::INDIVIDUAL_PSM), SynapseMatrixType::SPARSE_GLOBALG = static_cast<unsigned int>(SynapseMatrixConnectivity::SPARSE) | static_cast<unsigned int>(SynapseMatrixWeight::GLOBAL), SynapseMatrixType::SPARSE_GLOBALG_INDIVIDUAL_PSM = static_cast<unsigned int>(SynapseMatrixConnectivity::SPARSE) | static_cast<unsigned int>(SynapseMatrixWeight::GLOBAL) | static_cast<unsigned int>(SynapseMatrixWeight::INDIVIDUAL_PSM),
  SynapseMatrixType::SPARSE_INDIVIDUALG = static_cast<unsigned int>(SynapseMatrixConnectivity::SPARSE) | static_cast<unsigned int>(SynapseMatrixWeight::INDIVIDUAL) | static_cast<unsigned int>(SynapseMatrixWeight::INDIVIDUAL_PSM), SynapseMatrixType::PROCEDURAL_GLOBALG = static_cast<unsigned int>(SynapseMatrixConnectivity::PROCEDURAL) | static_cast<unsigned int>(SynapseMatrixWeight::GLOBAL), SynapseMatrixType::PROCEDURAL_GLOBALG_INDIVIDUAL_PSM = static_cast<unsigned int>(SynapseMatrixConnectivity::PROCEDURAL) | static_cast<unsigned int>(SynapseMatrixWeight::GLOBAL) | static_cast<unsigned int>(SynapseMatrixWeight::INDIVIDUAL_PSM), SynapseMatrixType::PROCEDURAL_PROCEDURALG = static_cast<unsigned int>(SynapseMatrixConnectivity::PROCEDURAL) | static_cast<unsigned int>(SynapseMatrixWeight::PROCEDURAL) | static_cast<unsigned int>(SynapseMatrixWeight::INDIVIDUAL_PSM),
  SynapseMatrixType::PROCEDURAL_KERNELG = static_cast<unsigned int>(SynapseMatrixConnectivity::PROCEDURAL) | static_cast<unsigned int>(SynapseMatrixWeight::KERNEL) | static_cast<unsigned int>(SynapseMatrixWeight::INDIVIDUAL_PSM), SynapseMatrixType::TOEPLITZ_KERNELG = static_cast<unsigned int>(SynapseMatrixConnectivity::TOEPLITZ) | static_cast<unsigned int>(SynapseMatrixWeight::KERNEL) | static_cast<unsigned int>(SynapseMatrixWeight::INDIVIDUAL_PSM)
}
 Supported combinations of SynapticMatrixConnectivity and SynapticMatrixWeight. More...
 

Functions

bool operator& (SynapseMatrixType type, SynapseMatrixConnectivity connType)
 
bool operator& (SynapseMatrixType type, SynapseMatrixWeight weightType)
 
SynapseMatrixType operator| (SynapseMatrixWeight weightType, SynapseMatrixConnectivity connType)
 
SynapseMatrixConnectivity getSynapseMatrixConnectivity (SynapseMatrixType type)
 
SynapseMatrixWeight getSynapseMatrixWeight (SynapseMatrixType type)
 

Enumeration Type Documentation

◆ SynapseMatrixConnectivity

enum SynapseMatrixConnectivity : unsigned int
strong

Flags defining differnet types of synaptic matrix connectivity.

Enumerator
DENSE 
BITMASK 
SPARSE 
PROCEDURAL 
TOEPLITZ 

◆ SynapseMatrixType

enum SynapseMatrixType : unsigned int
strong

Supported combinations of SynapticMatrixConnectivity and SynapticMatrixWeight.

Enumerator
DENSE_GLOBALG 
DENSE_GLOBALG_INDIVIDUAL_PSM 
DENSE_INDIVIDUALG 
DENSE_PROCEDURALG 
BITMASK_GLOBALG 
BITMASK_GLOBALG_INDIVIDUAL_PSM 
SPARSE_GLOBALG 
SPARSE_GLOBALG_INDIVIDUAL_PSM 
SPARSE_INDIVIDUALG 
PROCEDURAL_GLOBALG 
PROCEDURAL_GLOBALG_INDIVIDUAL_PSM 
PROCEDURAL_PROCEDURALG 
PROCEDURAL_KERNELG 
TOEPLITZ_KERNELG 

◆ SynapseMatrixWeight

enum SynapseMatrixWeight : unsigned int
strong

Flags defining different types of synaptic matrix connectivity.

Enumerator
GLOBAL 
INDIVIDUAL 
PROCEDURAL 
INDIVIDUAL_PSM 
KERNEL 

Function Documentation

◆ getSynapseMatrixConnectivity()

SynapseMatrixConnectivity getSynapseMatrixConnectivity ( SynapseMatrixType  type)
inline

◆ getSynapseMatrixWeight()

SynapseMatrixWeight getSynapseMatrixWeight ( SynapseMatrixType  type)
inline

◆ operator&() [1/2]

bool operator & ( SynapseMatrixType  type,
SynapseMatrixConnectivity  connType 
)
inline

◆ operator&() [2/2]

bool operator & ( SynapseMatrixType  type,
SynapseMatrixWeight  weightType 
)
inline

◆ operator|()

SynapseMatrixType operator| ( SynapseMatrixWeight  weightType,
SynapseMatrixConnectivity  connType 
)
inline