25 #ifndef WDATASETHIERARCHICALCLUSTERING_H_
26 #define WDATASETHIERARCHICALCLUSTERING_H_
35 #include "../common/WTransferable.h"
36 #include "../common/exceptions/WInvalidID.h"
38 #include "datastructures/WFiberCluster.h"
39 #include "datastructures/WTreeNode.h"
51 typedef std::shared_ptr< WDataSetHierarchicalClustering >
SPtr;
56 typedef std::shared_ptr< const WDataSetHierarchicalClustering >
ConstSPtr;
81 virtual const std::string
getName()
const;
Represents a hierarchy of clusters.
static std::shared_ptr< WPrototyped > getPrototype()
Returns a prototype instantiated with the true type of the deriving class.
std::shared_ptr< const WDataSetHierarchicalClustering > ConstSPtr
Pointer to const dataset.
std::shared_ptr< WDataSetHierarchicalClustering > SPtr
Pointer to dataset.
virtual const std::string getName() const
Gets the name of this prototype.
virtual ~WDataSetHierarchicalClustering()
Destructor.
std::vector< WTreeNode::SPtr > getClustersDownToLevel(WTreeNode::SPtr node, size_t level)
Returns all clusters down (root node has highest level) to a certain level in the hierarchy.
WTreeNode::SPtr m_rootNode
Pointer to the root cluster.
WTreeNode::SPtr getRootNode()
Returns the root cluster.
static std::shared_ptr< WPrototyped > m_prototype
The prototype as singleton.
std::map< size_t, WFiberCluster::SPtr > m_clusters
Stores the cluster map.
WDataSetHierarchicalClustering()
Constructs a new set of tracts.
std::map< size_t, WFiberCluster::SPtr > getClusterMap()
Returns the whole cluster map.
virtual const std::string getDescription() const
Gets the description for this prototype.
Base class for all data set types.
std::shared_ptr< WTreeNode > SPtr
Shared pointer abbreviation.