OpenWalnut  1.4.0
Public Member Functions | Private Attributes
WHierarchicalTreeFibers Class Reference

Class implements a hierarchical tree and provides helper functions for selection and navigation. More...

#include <WHierarchicalTreeFibers.h>

+ Inheritance diagram for WHierarchicalTreeFibers:

List of all members.

Public Member Functions

 WHierarchicalTreeFibers ()
 standard constructor
 ~WHierarchicalTreeFibers ()
 destructor
void addLeaf ()
 A leaf is at the very bottom of the tree, it represents a single fiber or voxel, for several purposes a leaf also counts as a cluster.
void addCluster (size_t cluster1, size_t cluster2, size_t level, std::vector< size_t > leafes, float customData)
 adds a cluster to the set, it combines 2 already existing clusters
boost::shared_ptr< std::vector
< bool > > 
getOutputBitfield (size_t cluster)
 generates a bitfield where for every leaf in the selected cluster the value is true, false otherwise
boost::shared_ptr< std::vector
< bool > > 
getOutputBitfield (std::vector< size_t >clusters)
 generates a bitfield where for every leaf in the selected cluster the value is true, false otherwise
std::vector< size_tgetBestClustersFittingRoi (float ratio=0.9, size_t number=1)
 finds clusters that match a given ROI up to a certain percentage
float getRatio (size_t cluster)
 calculates the ratio of fibers in the roi for a given cluster
void setRoiBitField (boost::shared_ptr< std::vector< bool > > bitfield)
 setter

Private Attributes

boost::shared_ptr< std::vector
< bool > > 
m_roiSelection
 stores a pointer to the bitfield by the current roi setting

Detailed Description

Class implements a hierarchical tree and provides helper functions for selection and navigation.

Definition at line 43 of file WHierarchicalTreeFibers.h.


Constructor & Destructor Documentation

standard constructor

Definition at line 34 of file WHierarchicalTreeFibers.cpp.

destructor

Definition at line 39 of file WHierarchicalTreeFibers.cpp.


Member Function Documentation

void WHierarchicalTreeFibers::addCluster ( size_t  cluster1,
size_t  cluster2,
size_t  level,
std::vector< size_t leafes,
float  customData 
)

adds a cluster to the set, it combines 2 already existing clusters

Parameters:
cluster1first cluster to add
cluster2second cluster to add
levellevel of the new cluster
leafesvector of leafes the new cluster contains
customDatasome arbitrary data stored with the cluster

Definition at line 64 of file WHierarchicalTreeFibers.cpp.

References WHierarchicalTree::m_children, WHierarchicalTree::m_clusterCount, WHierarchicalTree::m_colors, WHierarchicalTree::m_containsLeafes, WHierarchicalTree::m_customData, WHierarchicalTree::m_leafesLocked, WHierarchicalTree::m_level, WHierarchicalTree::m_maxLevel, and WHierarchicalTree::m_parents.

A leaf is at the very bottom of the tree, it represents a single fiber or voxel, for several purposes a leaf also counts as a cluster.

Implements WHierarchicalTree.

Definition at line 43 of file WHierarchicalTreeFibers.cpp.

References WHierarchicalTree::m_children, WHierarchicalTree::m_clusterCount, WHierarchicalTree::m_colors, WHierarchicalTree::m_containsLeafes, WHierarchicalTree::m_customData, WHierarchicalTree::m_leafCount, WHierarchicalTree::m_leafesLocked, WHierarchicalTree::m_level, and WHierarchicalTree::m_parents.

std::vector< size_t > WHierarchicalTreeFibers::getBestClustersFittingRoi ( float  ratio = 0.9,
size_t  number = 1 
)

finds clusters that match a given ROI up to a certain percentage

Parameters:
ratiovalue of [0,1] of how many leafs have to be in the ROI to activate the cluster
numbernumber of clusters to select, if more than given number matches the ratio criterion only the biggest clusters are returned
Returns:
The indices of the chosen clusters.

Definition at line 133 of file WHierarchicalTreeFibers.cpp.

References WHierarchicalTree::getChildren(), WHierarchicalTree::getClusterCount(), WHierarchicalTree::getLevel(), and getRatio().

boost::shared_ptr< std::vector< bool > > WHierarchicalTreeFibers::getOutputBitfield ( size_t  cluster)

generates a bitfield where for every leaf in the selected cluster the value is true, false otherwise

Parameters:
cluster
Returns:
shared pointer to the bitfield

Definition at line 85 of file WHierarchicalTreeFibers.cpp.

References WHierarchicalTree::m_clusterCount, WHierarchicalTree::m_containsLeafes, and WHierarchicalTree::m_leafCount.

boost::shared_ptr< std::vector< bool > > WHierarchicalTreeFibers::getOutputBitfield ( std::vector< size_t clusters)

generates a bitfield where for every leaf in the selected cluster the value is true, false otherwise

Parameters:
clusters
Returns:
shared pointer to the bitfield

Definition at line 114 of file WHierarchicalTreeFibers.cpp.

References WHierarchicalTree::m_containsLeafes, and WHierarchicalTree::m_leafCount.

calculates the ratio of fibers in the roi for a given cluster

Parameters:
cluster
Returns:
ratio

Definition at line 189 of file WHierarchicalTreeFibers.cpp.

References WHierarchicalTree::m_containsLeafes, and m_roiSelection.

Referenced by getBestClustersFittingRoi().

void WHierarchicalTreeFibers::setRoiBitField ( boost::shared_ptr< std::vector< bool > >  bitfield) [inline]

setter

Parameters:
bitfield

Definition at line 122 of file WHierarchicalTreeFibers.h.

References m_roiSelection.


Member Data Documentation

boost::shared_ptr< std::vector<bool> > WHierarchicalTreeFibers::m_roiSelection [private]

stores a pointer to the bitfield by the current roi setting

Definition at line 118 of file WHierarchicalTreeFibers.h.

Referenced by getRatio(), and setRoiBitField().


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