Public Member Functions | Friends
morphio::mut::Section Class Reference

#include <section.h>

Inheritance diagram for morphio::mut::Section:

Public Member Functions

uint32_t id () const noexcept
 
const std::shared_ptr< Section > & parent () const
 
bool isRoot () const
 
bool isHeterogeneous (bool downstream=true) const
 
bool hasSameShape (const Section &other) const noexcept
 
const std::vector< std::shared_ptr< Section > > & children () const
 
depth_iterator depth_begin () const
 
depth_iterator depth_end () const
 
breadth_iterator breadth_begin () const
 
breadth_iterator breadth_end () const
 
upstream_iterator upstream_begin () const
 
upstream_iterator upstream_end () const
 
std::shared_ptr< SectionappendSection (const morphio::Section &, bool recursive=false)
 
std::shared_ptr< SectionappendSection (std::shared_ptr< Section > original_section, bool recursive=false)
 
std::shared_ptr< SectionappendSection (const Property::PointLevel &, SectionType sectionType=SectionType::SECTION_UNDEFINED)
 
SectionTypetype () noexcept
 
const SectionTypetype () const noexcept
 
std::vector< Point > & points () noexcept
 
const std::vector< Point > & points () const noexcept
 
std::vector< morphio::floatType > & diameters () noexcept
 
const std::vector< morphio::floatType > & diameters () const noexcept
 
std::vector< morphio::floatType > & perimeters () noexcept
 
const std::vector< morphio::floatType > & perimeters () const noexcept
 
Property::PointLevelproperties () noexcept
 
const Property::PointLevelproperties () const noexcept
 

Friends

class Morphology
 

Detailed Description

Mutable(editable) morphio::Section

Member Function Documentation

◆ children()

const std::vector<std::shared_ptr<Section> >& morphio::mut::Section::children ( ) const

Return a vector of children IDs

◆ diameters()

const std::vector< morphio::floatType > & morphio::mut::Section::diameters ( )
inlinenoexcept

Return the diameters of all points of this section

◆ hasSameShape()

bool morphio::mut::Section::hasSameShape ( const Section other) const
noexcept

Return true if the both sections have the same points, diameters and perimeters

◆ id()

uint32_t morphio::mut::Section::id ( ) const
inlinenoexcept

Return the section ID

◆ isHeterogeneous()

bool morphio::mut::Section::isHeterogeneous ( bool  downstream = true) const

Return true if the sections of the tree downstream (downstream = true) or upstream (donwstream = false) have the same section type as the current section.

◆ isRoot()

bool morphio::mut::Section::isRoot ( ) const

Return true if section is a root section

◆ parent()

const std::shared_ptr<Section>& morphio::mut::Section::parent ( ) const

Get the parent ID

Note: Root sections return -1

◆ perimeters()

const std::vector< morphio::floatType > & morphio::mut::Section::perimeters ( )
inlinenoexcept

Return the perimeters of all points of this section

◆ points()

const std::vector< Point > & morphio::mut::Section::points ( )
inlinenoexcept

Return the coordinates (x,y,z) of all points of this section

◆ properties()

const Property::PointLevel & morphio::mut::Section::properties ( )
inlinenoexcept

Return the PointLevel instance that contains this section's data

◆ type()

const SectionType & morphio::mut::Section::type ( )
inlinenoexcept

Return the morphological type of this section (dendrite, axon, ...)