1 // =========================================================================
2 // @author Leonardo Florez Valencia
3 // @email florez-l@javeriana.edu.co
4 // =========================================================================
5 #ifndef __fpa__DataStructures__Image__MinimumSpanningTree__h__
6 #define __fpa__DataStructures__Image__MinimumSpanningTree__h__
8 #include <fpa/DataStructures/MinimumSpanningTree.h>
10 #include <fpa/DataStructures/Image/PolyLineParametricPath.h>
14 namespace DataStructures
20 template< unsigned int _VDim >
21 class MinimumSpanningTree
22 : public fpa::DataStructures::MinimumSpanningTree< itk::Index< _VDim >, itk::Image< itk::Offset< _VDim >, _VDim > >
25 typedef itk::Index< _VDim > TVertex;
26 typedef itk::Image< itk::Offset< _VDim >, _VDim > TDataStructuresImage;
28 typedef MinimumSpanningTree Self;
29 typedef itk::SmartPointer< Self > Pointer;
30 typedef itk::SmartPointer< const Self > ConstPointer;
31 typedef fpa::DataStructures::MinimumSpanningTree< TVertex, TDataStructuresImage > Superclass;
33 typedef typename Superclass::TCollision TCollision;
34 typedef typename Superclass::TCollisionsRow TCollisionsRow;
35 typedef typename Superclass::TCollisions TCollisions;
36 typedef typename Superclass::TVertices TVertices;
38 typedef fpa::DataStructures::Image::PolyLineParametricPath< _VDim > TPolyLineParametricPath;
43 fpa::DataStructures::Image::MinimumSpanningTree,
44 fpa::DataStructures::MinimumSpanningTree
48 virtual TVertex GetParent( const TVertex& v ) const override;
49 virtual void SetParent( const TVertex& v, const TVertex& p ) override;
51 void GetPolyLineParametricPath(
52 typename TPolyLineParametricPath::Pointer& path,
55 void GetPolyLineParametricPath(
56 typename TPolyLineParametricPath::Pointer& path,
57 const TVertex& a, const TVertex& b
61 MinimumSpanningTree( );
62 virtual ~MinimumSpanningTree( );
65 MinimumSpanningTree( const Self& other );
66 Self& operator=( const Self& other );
75 #ifndef ITK_MANUAL_INSTANTIATION
76 # include <fpa/DataStructures/Image/MinimumSpanningTree.hxx>
77 #endif // ITK_MANUAL_INSTANTIATION
78 #endif // __fpa__DataStructures__Image__MinimumSpanningTree__h__