]> Creatis software - FrontAlgorithms.git/blob - plugins/fpa/MinimumSpanningTree.cxx
...
[FrontAlgorithms.git] / plugins / fpa / MinimumSpanningTree.cxx
1 #include <plugins/fpa/MinimumSpanningTree.h>
2
3 // -------------------------------------------------------------------------
4 void fpaPlugins::MinimumSpanningTree::
5 SetITK( itk::LightObject* o )
6 {
7   typedef fpa::Image::MinimumSpanningTree< 2 > _I2;
8   typedef fpa::Image::MinimumSpanningTree< 3 > _I3;
9
10   bool     r = this->_SetITK< _I2 >( o );
11   if( !r ) r = this->_SetITK< _I3 >( o );
12   if( !r )
13     this->Superclass::SetITK( NULL );
14 }
15
16 // -------------------------------------------------------------------------
17 void fpaPlugins::MinimumSpanningTree::
18 SetVTK( vtkObjectBase* o )
19 {
20   // Do nothing: this only has sense in ITK
21 }
22
23 // -------------------------------------------------------------------------
24 fpaPlugins::MinimumSpanningTree::
25 MinimumSpanningTree( )
26   : Superclass( )
27 {
28 }
29
30 // -------------------------------------------------------------------------
31 fpaPlugins::MinimumSpanningTree::
32 ~MinimumSpanningTree( )
33 {
34 }
35
36 // -------------------------------------------------------------------------
37 template< class _TMST >
38 bool fpaPlugins::MinimumSpanningTree::
39 _SetITK( itk::LightObject* o )
40 {
41   _TMST* mst = dynamic_cast< _TMST* >( o );
42   if( mst != NULL )
43   {
44     this->Superclass::SetITK( o );
45     return( true );
46   }
47   else
48   {
49     this->Superclass::SetITK( NULL );
50     this->Superclass::SetVTK( NULL );
51     return( false );
52
53   } // fi
54 }
55
56 // -------------------------------------------------------------------------
57 // Explicit instances
58 // -------------------------------------------------------------------------
59
60 #include <fpa/Base/MinimumSpanningTree.hxx>
61 #include <fpa/Image/MinimumSpanningTree.hxx>
62 #include <itkImage.hxx>
63 #include <itkImportImageContainer.hxx>
64 #include <itkImageConstIteratorWithIndex.hxx>
65 #include <itkImageRegionConstIteratorWithIndex.hxx>
66
67 #define fpa_Explicit_MST( D )                                           \
68   template class fpaPlugins_EXPORT fpa::Base::MinimumSpanningTree< itk::Image< fpa::Image::MinimumSpanningTreeData< D >, D >, itk::Index< D > >; \
69   template class fpaPlugins_EXPORT fpa::Image::MinimumSpanningTree< D >; \
70   template class fpaPlugins_EXPORT itk::ImageConstIteratorWithIndex< fpa::Image::MinimumSpanningTree< D > >; \
71   template class fpaPlugins_EXPORT itk::ImageRegionConstIteratorWithIndex< fpa::Image::MinimumSpanningTree< D > >
72
73 fpa_Explicit_MST( 2 );
74 fpa_Explicit_MST( 3 );
75
76 // eof - $RCSfile$