+template< class V, class C, class R, class S, class VC, class MST, class B >
+typename fpa::Base::Dijkstra< V, C, R, S, VC, MST, B >::
+TMinimumSpanningTree* fpa::Base::Dijkstra< V, C, R, S, VC, MST, B >::
+GetMinimumSpanningTree( )
+{
+ return(
+ dynamic_cast< TMinimumSpanningTree* >(
+ this->itk::ProcessObject::GetOutput( this->m_MSTIdx )
+ )
+ );
+}
+
+// -------------------------------------------------------------------------
+template< class V, class C, class R, class S, class VC, class MST, class B >
+const typename fpa::Base::Dijkstra< V, C, R, S, VC, MST, B >::
+TMinimumSpanningTree* fpa::Base::Dijkstra< V, C, R, S, VC, MST, B >::
+GetMinimumSpanningTree( ) const
+{
+ return(
+ dynamic_cast< const TMinimumSpanningTree* >(
+ this->itk::ProcessObject::GetOutput( this->m_MSTIdx )
+ )
+ );
+}
+
+// -------------------------------------------------------------------------
+template< class V, class C, class R, class S, class VC, class MST, class B >
+void fpa::Base::Dijkstra< V, C, R, S, VC, MST, B >::
+GraftMinimumSpanningTree( itk::DataObject* obj )
+{
+ TMinimumSpanningTree* mst = dynamic_cast< TMinimumSpanningTree* >( obj );
+ if( mst != NULL )
+ this->GraftNthOutput( this->m_MSTIdx, mst );
+}
+
+// -------------------------------------------------------------------------
+template< class V, class C, class R, class S, class VC, class MST, class B >
+fpa::Base::Dijkstra< V, C, R, S, VC, MST, B >::