GeNN  4.9.0
GPU enhanced Neuronal Networks (GeNN)
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