nsol  0.4.1
Nsol - Neuroscience Objects Library
nsol::Neuron Class Reference

A class to represent neurons. More...

#include <Neuron.h>

+ Inheritance diagram for nsol::Neuron:
+ Collaboration diagram for nsol::Neuron:

Public Types

enum  TMorphologicalType : uint8_t {
  UNDEFINED = 0, PYRAMIDAL, INTERNEURON, BASKET,
  STELLATE, GOLGI, GRANULE, LUGARO,
  UNIPOLAR_BRUSH, PURKINJE, CHANDELIER, INFERIOR_OLIVE,
  DEEP_CEREBELLAR_NUCLEI
}
 Type of neuron based in neuron morphology. More...
 
enum  TFunctionalType : uint8_t { UNDEFINED_FUNCTIONAL_TYPE = 0, INHIBITORY, EXCITATORY }
 Type of neuron based in neuron functionality.
 

Public Member Functions

 Neuron (const NeuronMorphologyPtr neuronMorphology=nullptr, const unsigned short layer=0, const unsigned int gid=0, const Matrix4_4f transform=Matrix4_4fIdentity, const MiniColumnPtr miniColumn=nullptr, const TMorphologicalType morphologicalType=UNDEFINED, const TFunctionalType functionalType=UNDEFINED_FUNCTIONAL_TYPE)
 
bool hasMorphology () const
 
bool isMorphologyLoaded () const
 
NeuronMorphologyPtr morphology (void) const
 
virtual void morphology (NeuronMorphologyPtr morphology)
 
Matrix4_4f & transform (void)
 Method to get the transformation matrix of the neuron. More...
 
unsigned short & layer (void)
 Method to get-set the layer of the neuron. More...
 
unsigned int & gid (void)
 Method to get-set the layer of the neuron. More...
 
void miniColumn (MiniColumnPtr miniColumn)
 
MiniColumnPtrminiColumn (void)
 
TMorphologicalTypemorphologicalType ()
 Method to get the neuron type based in morphology. More...
 
TFunctionalTypefunctionalType ()
 Method to get the neuron type based in functionality. More...
 
bool isPyramidal (void)
 Method to know if the neuron is pyramidal type. More...
 
bool isInterneuron (void)
 Method to know if the neuron is internuron type. More...
 
bool isExcitatory (void)
 Method to know if the neuron is excitatory type. More...
 
bool isInhibitory (void)
 Method to know if the neuron is inhibitory type. More...
 
virtual NeuronPtr asNeuron (void)
 
- Public Member Functions inherited from nsol::Object
virtual ColumnPtr asColumn (void)
 
virtual MiniColumnPtr asMiniColumn (void)
 
virtual NeuronMorphologyPtr asNeuronMorphology (void)
 
virtual SectionPtr asSection (void)
 
virtual NodePtr asNode (void)
 
virtual ObjectWithPropertiesproperties (void)
 
virtual ObjectPtr create (void)
 

Static Public Member Functions

static std::string typeToString (const TMorphologicalType type)
 Returns the string of the given morphological type. More...
 
static Eigen::Vector3f typeToColor (const TMorphologicalType type)
 Returns the color assigned to the type. More...
 
static Eigen::Vector3f layerToColor (const unsigned short layer)
 
static std::string functionToString (const TFunctionalType type)
 
static Eigen::Vector3f functionToColor (const TFunctionalType type)
 

Protected Attributes

NeuronMorphologyPtr _morphology
 Morphology pointer.
 
MiniColumnPtr _miniColumn
 Minicolumn pointer.
 
Matrix4_4f _transform
 Matrix of global transformation.
 
unsigned short _layer
 Layer.
 
unsigned int _gid
 Unique id.
 
TMorphologicalType _morphologicalType
 Type of neuron based in morphology.
 
TFunctionalType _functionalType
 Type of neuron based in functionality.
 

Detailed Description

A class to represent neurons.

TODO: extend long description

Definition at line 43 of file Neuron.h.

Member Enumeration Documentation

Type of neuron based in neuron morphology.

Enumerator
UNDEFINED 

Type for undefined.

PYRAMIDAL 

General pyramidal.

INTERNEURON 

General interneuron.

BASKET 

Cerebellum interneurons.

PURKINJE 

Other Cerebellum cells.

Definition at line 50 of file Neuron.h.

Member Function Documentation

TFunctionalType& nsol::Neuron::functionalType ( )

Method to get the neuron type based in functionality.

Returns
neuron type
unsigned int& nsol::Neuron::gid ( void  )

Method to get-set the layer of the neuron.

Returns
layer
bool nsol::Neuron::isExcitatory ( void  )

Method to know if the neuron is excitatory type.

Returns
bool
bool nsol::Neuron::isInhibitory ( void  )

Method to know if the neuron is inhibitory type.

Returns
bool
bool nsol::Neuron::isInterneuron ( void  )

Method to know if the neuron is internuron type.

Returns
bool
bool nsol::Neuron::isPyramidal ( void  )

Method to know if the neuron is pyramidal type.

Returns
bool
unsigned short& nsol::Neuron::layer ( void  )

Method to get-set the layer of the neuron.

Returns
layer

Referenced by typeToColor().

+ Here is the caller graph for this function:

TMorphologicalType& nsol::Neuron::morphologicalType ( )

Method to get the neuron type based in morphology.

Returns
neuron type
Matrix4_4f& nsol::Neuron::transform ( void  )

Method to get the transformation matrix of the neuron.

Returns
transformation matrix
static Eigen::Vector3f nsol::Neuron::typeToColor ( const TMorphologicalType  type)
inlinestatic

Returns the color assigned to the type.

Colors are now "random", should use the ones defined in other HDF5 activity file. TODO: change colors.

Parameters
[in]typeMorphological type.

Definition at line 133 of file Neuron.h.

References BASKET, INTERNEURON, layer(), PURKINJE, PYRAMIDAL, and UNDEFINED.

+ Here is the call graph for this function:

static std::string nsol::Neuron::typeToString ( const TMorphologicalType  type)
inlinestatic

Returns the string of the given morphological type.

Parameters
[in]typeMorphological type.

Definition at line 76 of file Neuron.h.

References BASKET, INTERNEURON, PURKINJE, PYRAMIDAL, and UNDEFINED.


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