X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2Ffpa%2FImage%2FDijkstra.h;h=4262f7f4b9d8e903d5c017fe64b1b59fb306c31b;hb=75a965968c4234c08e1ad1700ee5bc8da6362eba;hp=24c06438c01885c54e184881e3f3edb33cdc64d8;hpb=c9542e420b94b0bfc1f285599f7816eab1191519;p=FrontAlgorithms.git diff --git a/lib/fpa/Image/Dijkstra.h b/lib/fpa/Image/Dijkstra.h index 24c0643..4262f7f 100644 --- a/lib/fpa/Image/Dijkstra.h +++ b/lib/fpa/Image/Dijkstra.h @@ -7,6 +7,8 @@ #define __fpa__Image__Dijkstra__h__ #include +#include +#include #include #include #include @@ -18,25 +20,25 @@ namespace fpa { /** */ - template< class _TInputImage, class _TOutputImage, class _TFrontId = unsigned char > + template< class _TInputImage, class _TOutputImage, class _TFrontId = unsigned char, class _TTraits = fpa::Image::DefaultTraits< _TInputImage, _TOutputImage, _TFrontId > > class Dijkstra - : public fpa::Base::Dijkstra< fpa::Image::Algorithm< fpa::Image::DefaultTraits< _TInputImage, _TOutputImage, _TFrontId > >, fpa::Image::MinimumSpanningTree< _TInputImage::ImageDimension > > + : public fpa::Base::Dijkstra< fpa::Image::Algorithm< _TTraits, fpa::Base::MarksInterfaceWithCollisions< _TTraits >, fpa::Base::SeedsInterface< _TTraits > >, fpa::Image::MinimumSpanningTree< _TInputImage::ImageDimension > > { public: typedef _TInputImage TInputImage; typedef _TOutputImage TOutputImage; - typedef _TFrontId TFrontId; + typedef _TTraits TTraits; + typedef fpa::Base::MarksInterfaceWithCollisions< TTraits > TMarksInterface; + typedef fpa::Base::SeedsInterface< TTraits > TSeedsInterface; typedef fpa::Image::MinimumSpanningTree< _TInputImage::ImageDimension > TMST; - typedef fpa::Image::DefaultTraits< TInputImage, TOutputImage, TFrontId > TTraits; - typedef fpa::Image::Algorithm< TTraits > TAlgorithm; + typedef fpa::Image::Algorithm< TTraits, TMarksInterface, TSeedsInterface > TAlgorithm; typedef fpa::Base::Dijkstra< TAlgorithm, TMST > Superclass; typedef Dijkstra Self; typedef itk::SmartPointer< Self > Pointer; typedef itk::SmartPointer< const Self > ConstPointer; - typedef typename Superclass::TOutputValue TOutputValue; - typedef typename Superclass::TVertex TVertex; + fpa_Base_TraitTypes( typename TTraits ); typedef fpa::Image::Functors::Dijkstra::Function< TInputImage, TOutputValue > TWeightFunction;