return( null_path );
}
+// -------------------------------------------------------------------------
+template< unsigned int _VDim >
+std::vector< typename cpExtensions::DataStructures::Skeleton< _VDim >::TIndex >
+cpExtensions::DataStructures::Skeleton< _VDim >::
+GetEndPoints( ) const
+{
+ std::vector< TIndex > res;
+ auto mIt = this->BeginEdgesRows( );
+ for( ; mIt != this->EndEdgesRows( ); ++mIt )
+ {
+ unsigned long count = mIt->second.size( );
+ if( count == 1 )
+ res.push_back( mIt->first );
+
+ } // rof
+ return( res );
+}
+
+// -------------------------------------------------------------------------
+template< unsigned int _VDim >
+std::vector< typename cpExtensions::DataStructures::Skeleton< _VDim >::TIndex >
+cpExtensions::DataStructures::Skeleton< _VDim >::
+GetBifurcations( ) const
+{
+ std::vector< TIndex > res;
+ auto mIt = this->BeginEdgesRows( );
+ for( ; mIt != this->EndEdgesRows( ); ++mIt )
+ {
+ unsigned long count = mIt->second.size( );
+ if( count > 1 )
+ res.push_back( mIt->first );
+
+ } // rof
+ return( res );
+}
+
// -------------------------------------------------------------------------
template< unsigned int _VDim >
cpExtensions::DataStructures::Skeleton< _VDim >::