dendritic_spine.h
1 /* Copyright (c) 2013-2023, EPFL/Blue Brain Project
2  *
3  * SPDX-License-Identifier: Apache-2.0
4  */
5 #pragma once
6 
7 #include <string>
8 #include <vector>
9 
10 #include <morphio/enums.h> // SomaType
11 #include <morphio/morphology.h> // Morphology
12 #include <morphio/types.h> // EndoplasmicReticulum, Mitochondria
13 
14 namespace morphio {
15 
18 {
19  public:
20  explicit DendriticSpine(const std::string& source);
21 
22  const std::vector<Property::DendriticSpine::PostSynapticDensity>& postSynapticDensity() const
23  noexcept;
24 
25  protected:
26  friend class mut::DendriticSpine;
27  explicit DendriticSpine(const Property::Properties& properties);
28 
29  private:
30  Soma soma() const;
31  Mitochondria mitochondria() const;
32  const EndoplasmicReticulum endoplasmicReticulum() const;
33  const std::vector<Property::Annotation>& annotations() const;
34  const std::vector<Property::Marker>& markers() const;
35  const SomaType& somaType() const;
36 };
37 
38 } // namespace morphio
morphio::Property::Properties
Definition: properties.h:209
morphio::enums::SomaType
SomaType
Definition: enums.h:59
morphio::Morphology
Definition: morphology.h:26
morphio::mut::DendriticSpine
Definition: dendritic_spine.h:17
morphio::DendriticSpine
Definition: dendritic_spine.h:17
morphio::Mitochondria
Definition: mitochondria.h:22
morphio::Soma
Definition: soma.h:28
morphio::EndoplasmicReticulum
Definition: endoplasmic_reticulum.h:22