X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2Ffpa%2FImage%2FDijkstraWithSphereBacktracking.h;h=137017a50a2adb5bbf5090217f6083f967347f5d;hb=781520794cb7530b882effe7222dde78f1039eb3;hp=0cc0c4f637b7fabc5c6808db06bc0f25bfd26381;hpb=b63dc485b7255d1ab70ff72096beafe13a71f1be;p=FrontAlgorithms.git diff --git a/lib/fpa/Image/DijkstraWithSphereBacktracking.h b/lib/fpa/Image/DijkstraWithSphereBacktracking.h index 0cc0c4f..137017a 100644 --- a/lib/fpa/Image/DijkstraWithSphereBacktracking.h +++ b/lib/fpa/Image/DijkstraWithSphereBacktracking.h @@ -28,8 +28,12 @@ namespace fpa typedef typename Superclass::InputImageType TImage; typedef std::deque< TVertex > TVertices; - typedef typename Superclass::TTraits::TVertexCmp TVertexCmp; - typedef std::map< TVertex, TVertex, TVertexCmp > TTree; + typedef unsigned short TMark; + typedef itk::Image< TMark, I::ImageDimension > TMarkImage; + + typedef typename Superclass::TTraits::TVertexCmp TVertexCmp; + typedef std::pair< TVertex, TMark > TTreeNode; + typedef std::map< TVertex, TTreeNode, TVertexCmp > TTree; typedef typename Superclass::TEndEvent TEndEvent; typedef typename Superclass::TBacktrackingEvent TBacktrackingEvent; @@ -48,8 +52,15 @@ namespace fpa itkNewMacro( Self ); itkTypeMacro( DijkstraWithSphereBacktracking, Dijkstra ); - itkGetConstMacro( FinalTree, TTree ); + itkGetConstMacro( FullTree, TTree ); + itkGetConstMacro( ReducedTree, TTree ); itkGetConstMacro( EndPoints, TVertices ); + itkGetConstMacro( BifurcationPoints, TVertices ); + itkGetConstMacro( NumberOfBranches, TMark ); + + public: + TMarkImage* GetOutputMarkImage( ); + const TMarkImage* GetOutputMarkImage( ) const; protected: DijkstraWithSphereBacktracking( ); @@ -68,8 +79,11 @@ namespace fpa protected: _TCandidates m_Candidates; - TTree m_FinalTree; + TTree m_FullTree; + TTree m_ReducedTree; + TVertices m_BifurcationPoints; TVertices m_EndPoints; + TMark m_NumberOfBranches; }; } // ecapseman