endoplasmic_reticulum.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 <morphio/types.h> // floatType
8 
9 #include <cstdint> // uint32_t
10 #include <memory> // std::shared_ptr
11 #include <utility> // std::move
12 #include <vector> // std::vector
13 
14 #include <morphio/properties.h> // Property
15 
16 namespace morphio {
23 {
24  public:
28  const std::vector<uint32_t>& sectionIndices() const;
29 
33  const std::vector<morphio::floatType>& volumes() const;
34 
38  const std::vector<morphio::floatType>& surfaceAreas() const;
39 
43  const std::vector<uint32_t>& filamentCounts() const;
44 
45  private:
46  explicit EndoplasmicReticulum(std::shared_ptr<Property::Properties> properties)
47  : properties_(std::move(properties)) {}
48  std::shared_ptr<Property::Properties> properties_;
49 
50  friend class Morphology;
52 };
53 } // namespace morphio
morphio::Morphology
Definition: morphology.h:24
morphio::EndoplasmicReticulum::sectionIndices
const std::vector< uint32_t > & sectionIndices() const
morphio::mut::EndoplasmicReticulum
Definition: endoplasmic_reticulum.h:13
morphio::EndoplasmicReticulum::filamentCounts
const std::vector< uint32_t > & filamentCounts() const
morphio::EndoplasmicReticulum::surfaceAreas
const std::vector< morphio::floatType > & surfaceAreas() const
morphio::EndoplasmicReticulum
Definition: endoplasmic_reticulum.h:22
morphio::EndoplasmicReticulum::volumes
const std::vector< morphio::floatType > & volumes() const