cpPlugins_Interface_Define_ProcessObject( MeshSource, SourceObject );
cpPlugins_Interface_Define_ProcessObject( ImageSink, SinkObject );
cpPlugins_Interface_Define_ProcessObject( MeshSink, SinkObject );
- cpPlugins_Interface_Define_ProcessObject( ImageToImageFilter, FilterObject );
- cpPlugins_Interface_Define_ProcessObject( ImageToMeshFilter, FilterObject );
- cpPlugins_Interface_Define_ProcessObject( MeshToImageFilter, FilterObject );
- cpPlugins_Interface_Define_ProcessObject( MeshToMeshFilter, FilterObject );
+ cpPlugins_Interface_Define_ProcessObject(
+ ImageToImageFilter, FilterObject
+ );
+ cpPlugins_Interface_Define_ProcessObject(
+ ImageToMeshFilter, FilterObject
+ );
+ cpPlugins_Interface_Define_ProcessObject(
+ MeshToImageFilter, FilterObject
+ );
+ cpPlugins_Interface_Define_ProcessObject(
+ MeshToMeshFilter, FilterObject
+ );
} // ecapseman
#include <vtkImageData.h>
#include <vtkPolyData.h>
-// -------------------------------------------------------------------------
-/* TODO
- itk::DataObject* cpPlugins::Interface::DataObject::
- GetITKDataObject( )
- {
- return( this->m_ITKObject.GetPointer( ) );
- }
-
- // -------------------------------------------------------------------------
- const itk::DataObject* cpPlugins::Interface::DataObject::
- GetITKDataObject( ) const
- {
- return( this->m_ITKObject.GetPointer( ) );
- }
-
- // -------------------------------------------------------------------------
- vtkDataObject* cpPlugins::Interface::DataObject::
- GetVTKDataObject( )
- {
- return( this->m_VTKObject.GetPointer( ) );
- }
-
- // -------------------------------------------------------------------------
- const vtkDataObject* cpPlugins::Interface::DataObject::
- GetVTKDataObject( ) const
- {
- return( this->m_VTKObject.GetPointer( ) );
- }
-*/
-
// -------------------------------------------------------------------------
cpPlugins::Interface::Object* cpPlugins::Interface::DataObject::
GetSource( )
#include <cpPlugins/Interface/cpPlugins_Interface_Export.h>
#include <cpPlugins/Interface/Object.h>
-#define ITK_MANUAL_INSTANTIATION
#include <itkDataObject.h>
namespace cpPlugins
itkTypeMacro( DataObject, Object );
public:
- /* TODO
- virtual itk::DataObject* GetITKDataObject( );
- virtual const itk::DataObject* GetITKDataObject( ) const;
-
- virtual vtkDataObject* GetVTKDataObject( );
- virtual const vtkDataObject* GetVTKDataObject( ) const;
- */
-
Object* GetSource( );
const Object* GetSource( ) const;
void SetSource( Object* src );
#include <cpPlugins/Interface/cpPlugins_Interface_Export.h>
#include <cpPlugins/Interface/DataObject.h>
-#define ITK_MANUAL_INSTANTIATION
#include <itkProcessObject.h>
class vtkImageData;
-// -------------------------------------------------------------------------
-/* TODO
- #define cpPlugins_Image_Demangle( p, d, o, f, r ) \
- if( dynamic_cast< itk::Image< p, d >* >( o ) != NULL ) \
- r = this->f< itk::Image< p, d > >( o )
-
- // -------------------------------------------------------------------------
- #define cpPlugins_Image_Array_Demangle( a, p, da, di, o, f, r ) \
- if( dynamic_cast< itk::Image< a< p, da >, di >* >( o ) != NULL ) \
- r = this->f< itk::Image< a< p, da >, di > >( o )
-*/
-
// -------------------------------------------------------------------------
namespace cpPlugins
{
itkTypeMacro( Image, DataObject );
public:
- /*
- virtual void SetITKDataObject( itk::DataObject* o );
- virtual void SetVTKDataObject( vtkDataObject* o );
- */
-
template< class I >
inline void SetITKImage( itk::DataObject* object );
template< class P, unsigned int D >
inline void _ITK_2_VTK( itk::DataObject* object );
- /* TODO
- template< unsigned int D >
- bool _Dim( itk::DataObject* o );
-
- template< class I >
- bool _Type( itk::DataObject* o );
- */
-
private:
// Purposely not implemented
Image( const Self& );
#ifndef __CPPLUGINS__INTERFACE__IMAGE__HXX__
#define __CPPLUGINS__INTERFACE__IMAGE__HXX__
-#define ITK_MANUAL_INSTANTIATION
+#include <cpPlugins/Interface/Macros.h>
+
#include <itkImage.h>
#include <itkImageToVTKImageFilter.h>
TI, itk::SymmetricSecondRankTensor, double, D, D, o \
)
+// -------------------------------------------------------------------------
+#define cpPlugins_Image_Import( T, D ) \
+ cpPlugins_TEMPLATE_IMPORT( \
+ 2(class cpPlugins_Interface_EXPORT itk::Image< T, D >) \
+ )
+
+// -------------------------------------------------------------------------
+#define cpPlugins_VTKImage_Import( T, D ) \
+ cpPlugins_TEMPLATE_IMPORT( \
+ 2( \
+ class cpPlugins_Interface_EXPORT \
+ itk::ImageToVTKImageFilter< itk::Image< T, D > > \
+ ) \
+ )
+
+// -------------------------------------------------------------------------
+#define cpPlugins_ImageArray_Import( A, T, DA, DI ) \
+ cpPlugins_TEMPLATE_IMPORT( \
+ 3( \
+ class cpPlugins_Interface_EXPORT \
+ itk::Image< itk::A< T, DA >, DI > \
+ ) \
+ )
+
+// -------------------------------------------------------------------------
+#define cpPlugins_VTKImageArray_Import( A, T, DA, DI ) \
+ cpPlugins_TEMPLATE_IMPORT( \
+ 3( \
+ class cpPlugins_Interface_EXPORT \
+ itk::ImageToVTKImageFilter< itk::Image< itk::A< T, DA >, DI > > \
+ ) \
+ )
+
+// -------------------------------------------------------------------------
+#define cpPlugins_Image_Import_AllDimensions( T ) \
+ cpPlugins_Image_Import( T, 2 ); \
+ cpPlugins_Image_Import( T, 3 ); \
+ cpPlugins_Image_Import( T, 4 )
+
+// -------------------------------------------------------------------------
+#define cpPlugins_VTKImage_Import_AllDimensions( T ) \
+ cpPlugins_VTKImage_Import( T, 2 ); \
+ cpPlugins_VTKImage_Import( T, 3 )
+
+// -------------------------------------------------------------------------
+#define cpPlugins_ImageArray_Import_AllDimensions( A, T ) \
+ cpPlugins_ImageArray_Import( A, T, 2, 2 ); \
+ cpPlugins_ImageArray_Import( A, T, 3, 3 ); \
+ cpPlugins_ImageArray_Import( A, T, 4, 4 )
+
+// -------------------------------------------------------------------------
+#define cpPlugins_VTKImageArray_Import_AllDimensions( A, T ) \
+ cpPlugins_VTKImageArray_Import( A, T, 2, 2 ); \
+ cpPlugins_VTKImageArray_Import( A, T, 3, 3 )
+
+// -------------------------------------------------------------------------
+// ITK base clases
+cpPlugins_Image_Import_AllDimensions( char );
+cpPlugins_Image_Import_AllDimensions( short );
+cpPlugins_Image_Import_AllDimensions( int );
+cpPlugins_Image_Import_AllDimensions( long );
+cpPlugins_Image_Import_AllDimensions( unsigned char );
+cpPlugins_Image_Import_AllDimensions( unsigned short );
+cpPlugins_Image_Import_AllDimensions( unsigned int );
+cpPlugins_Image_Import_AllDimensions( unsigned long );
+cpPlugins_Image_Import_AllDimensions( float );
+cpPlugins_Image_Import_AllDimensions( double );
+
+cpPlugins_Image_Import_AllDimensions( std::complex< float > );
+cpPlugins_Image_Import_AllDimensions( std::complex< double > );
+
+cpPlugins_Image_Import_AllDimensions( itk::RGBPixel< char > );
+cpPlugins_Image_Import_AllDimensions( itk::RGBPixel< short > );
+cpPlugins_Image_Import_AllDimensions( itk::RGBPixel< int > );
+cpPlugins_Image_Import_AllDimensions( itk::RGBPixel< long > );
+cpPlugins_Image_Import_AllDimensions( itk::RGBPixel< unsigned char > );
+cpPlugins_Image_Import_AllDimensions( itk::RGBPixel< unsigned short > );
+cpPlugins_Image_Import_AllDimensions( itk::RGBPixel< unsigned int > );
+cpPlugins_Image_Import_AllDimensions( itk::RGBPixel< unsigned long > );
+
+cpPlugins_Image_Import_AllDimensions( itk::RGBAPixel< char > );
+cpPlugins_Image_Import_AllDimensions( itk::RGBAPixel< short > );
+cpPlugins_Image_Import_AllDimensions( itk::RGBAPixel< int > );
+cpPlugins_Image_Import_AllDimensions( itk::RGBAPixel< long > );
+cpPlugins_Image_Import_AllDimensions( itk::RGBAPixel< unsigned char > );
+cpPlugins_Image_Import_AllDimensions( itk::RGBAPixel< unsigned short > );
+cpPlugins_Image_Import_AllDimensions( itk::RGBAPixel< unsigned int > );
+cpPlugins_Image_Import_AllDimensions( itk::RGBAPixel< unsigned long > );
+
+cpPlugins_ImageArray_Import_AllDimensions( Vector, float );
+cpPlugins_ImageArray_Import_AllDimensions( Vector, double );
+
+cpPlugins_ImageArray_Import_AllDimensions( CovariantVector, float );
+cpPlugins_ImageArray_Import_AllDimensions( CovariantVector, double );
+
+cpPlugins_ImageArray_Import_AllDimensions( Point, float );
+cpPlugins_ImageArray_Import_AllDimensions( Point, double );
+
+cpPlugins_ImageArray_Import_AllDimensions(
+ SymmetricSecondRankTensor, float
+ );
+cpPlugins_ImageArray_Import_AllDimensions(
+ SymmetricSecondRankTensor, double
+ );
+
+cpPlugins_Image_Import( itk::DiffusionTensor3D< float >, 3 );
+cpPlugins_Image_Import( itk::DiffusionTensor3D< double >, 3 );
+cpPlugins_Image_Import( itk::Offset< 2 >, 2 );
+cpPlugins_Image_Import( itk::Offset< 3 >, 3 );
+cpPlugins_Image_Import( itk::Offset< 4 >, 4 );
+
+// -------------------------------------------------------------------------
+// ITK<->VTK base clases
+cpPlugins_VTKImage_Import_AllDimensions( char );
+cpPlugins_VTKImage_Import_AllDimensions( short );
+cpPlugins_VTKImage_Import_AllDimensions( int );
+cpPlugins_VTKImage_Import_AllDimensions( long );
+cpPlugins_VTKImage_Import_AllDimensions( unsigned char );
+cpPlugins_VTKImage_Import_AllDimensions( unsigned short );
+cpPlugins_VTKImage_Import_AllDimensions( unsigned int );
+cpPlugins_VTKImage_Import_AllDimensions( unsigned long );
+cpPlugins_VTKImage_Import_AllDimensions( float );
+cpPlugins_VTKImage_Import_AllDimensions( double );
+
+cpPlugins_VTKImage_Import_AllDimensions( itk::RGBPixel< char > );
+cpPlugins_VTKImage_Import_AllDimensions( itk::RGBPixel< short > );
+cpPlugins_VTKImage_Import_AllDimensions( itk::RGBPixel< int > );
+cpPlugins_VTKImage_Import_AllDimensions( itk::RGBPixel< long > );
+cpPlugins_VTKImage_Import_AllDimensions( itk::RGBPixel< unsigned char > );
+cpPlugins_VTKImage_Import_AllDimensions( itk::RGBPixel< unsigned short > );
+cpPlugins_VTKImage_Import_AllDimensions( itk::RGBPixel< unsigned int > );
+cpPlugins_VTKImage_Import_AllDimensions( itk::RGBPixel< unsigned long > );
+
+cpPlugins_VTKImage_Import_AllDimensions( itk::RGBAPixel< char > );
+cpPlugins_VTKImage_Import_AllDimensions( itk::RGBAPixel< short > );
+cpPlugins_VTKImage_Import_AllDimensions( itk::RGBAPixel< int > );
+cpPlugins_VTKImage_Import_AllDimensions( itk::RGBAPixel< long > );
+cpPlugins_VTKImage_Import_AllDimensions( itk::RGBAPixel< unsigned char > );
+cpPlugins_VTKImage_Import_AllDimensions( itk::RGBAPixel< unsigned short > );
+cpPlugins_VTKImage_Import_AllDimensions( itk::RGBAPixel< unsigned int > );
+cpPlugins_VTKImage_Import_AllDimensions( itk::RGBAPixel< unsigned long > );
+
+cpPlugins_VTKImageArray_Import_AllDimensions( Vector, float );
+cpPlugins_VTKImageArray_Import_AllDimensions( Vector, double );
+
+cpPlugins_VTKImageArray_Import_AllDimensions( CovariantVector, float );
+cpPlugins_VTKImageArray_Import_AllDimensions( CovariantVector, double );
+
+cpPlugins_VTKImageArray_Import_AllDimensions( Point, float );
+cpPlugins_VTKImageArray_Import_AllDimensions( Point, double );
+
+cpPlugins_VTKImageArray_Import_AllDimensions(
+ SymmetricSecondRankTensor, float
+ );
+cpPlugins_VTKImageArray_Import_AllDimensions(
+ SymmetricSecondRankTensor, double
+ );
+
+cpPlugins_VTKImage_Import( itk::DiffusionTensor3D< float >, 3 );
+cpPlugins_VTKImage_Import( itk::DiffusionTensor3D< double >, 3 );
+
// -------------------------------------------------------------------------
template< class I >
void cpPlugins::Interface::Image::
--- /dev/null
+#include <cpPlugins/Interface/Macros.h>
+
+#include <complex>
+
+#include <itkImage.h>
+#include <itkImageToVTKImageFilter.h>
+
+#include <itkCovariantVector.h>
+#include <itkDiffusionTensor3D.h>
+#include <itkPoint.h>
+#include <itkRGBPixel.h>
+#include <itkRGBAPixel.h>
+#include <itkSymmetricSecondRankTensor.h>
+#include <itkVector.h>
+
+// -------------------------------------------------------------------------
+#define cpPlugins_Image_Export( T, D ) \
+ cpPlugins_TEMPLATE_EXPORT( \
+ 2(class cpPlugins_Interface_EXPORT itk::Image< T, D >) \
+ )
+
+// -------------------------------------------------------------------------
+#define cpPlugins_VTKImage_Export( T, D ) \
+ cpPlugins_TEMPLATE_EXPORT( \
+ 2( \
+ class cpPlugins_Interface_EXPORT \
+ itk::ImageToVTKImageFilter< itk::Image< T, D > > \
+ ) \
+ )
+
+// -------------------------------------------------------------------------
+#define cpPlugins_ImageArray_Export( A, T, DA, DI ) \
+ cpPlugins_TEMPLATE_EXPORT( \
+ 3( \
+ class cpPlugins_Interface_EXPORT \
+ itk::Image< itk::A< T, DA >, DI > \
+ ) \
+ )
+
+// -------------------------------------------------------------------------
+#define cpPlugins_VTKImageArray_Export( A, T, DA, DI ) \
+ cpPlugins_TEMPLATE_EXPORT( \
+ 3( \
+ class cpPlugins_Interface_EXPORT \
+ itk::ImageToVTKImageFilter< itk::Image< itk::A< T, DA >, DI > > \
+ ) \
+ )
+
+// -------------------------------------------------------------------------
+#define cpPlugins_Image_Export_AllDimensions( T ) \
+ cpPlugins_Image_Export( T, 2 ); \
+ cpPlugins_Image_Export( T, 3 ); \
+ cpPlugins_Image_Export( T, 4 )
+
+// -------------------------------------------------------------------------
+#define cpPlugins_VTKImage_Export_AllDimensions( T ) \
+ cpPlugins_VTKImage_Export( T, 2 ); \
+ cpPlugins_VTKImage_Export( T, 3 )
+
+// -------------------------------------------------------------------------
+#define cpPlugins_ImageArray_Export_AllDimensions( A, T ) \
+ cpPlugins_ImageArray_Export( A, T, 2, 2 ); \
+ cpPlugins_ImageArray_Export( A, T, 3, 3 ); \
+ cpPlugins_ImageArray_Export( A, T, 4, 4 )
+
+// -------------------------------------------------------------------------
+#define cpPlugins_VTKImageArray_Export_AllDimensions( A, T ) \
+ cpPlugins_VTKImageArray_Export( A, T, 2, 2 ); \
+ cpPlugins_VTKImageArray_Export( A, T, 3, 3 )
+
+// -------------------------------------------------------------------------
+// ITK base clases
+cpPlugins_Image_Export_AllDimensions( char );
+cpPlugins_Image_Export_AllDimensions( short );
+cpPlugins_Image_Export_AllDimensions( int );
+cpPlugins_Image_Export_AllDimensions( long );
+cpPlugins_Image_Export_AllDimensions( unsigned char );
+cpPlugins_Image_Export_AllDimensions( unsigned short );
+cpPlugins_Image_Export_AllDimensions( unsigned int );
+cpPlugins_Image_Export_AllDimensions( unsigned long );
+cpPlugins_Image_Export_AllDimensions( float );
+cpPlugins_Image_Export_AllDimensions( double );
+
+cpPlugins_Image_Export_AllDimensions( std::complex< float > );
+cpPlugins_Image_Export_AllDimensions( std::complex< double > );
+
+cpPlugins_Image_Export_AllDimensions( itk::RGBPixel< char > );
+cpPlugins_Image_Export_AllDimensions( itk::RGBPixel< short > );
+cpPlugins_Image_Export_AllDimensions( itk::RGBPixel< int > );
+cpPlugins_Image_Export_AllDimensions( itk::RGBPixel< long > );
+cpPlugins_Image_Export_AllDimensions( itk::RGBPixel< unsigned char > );
+cpPlugins_Image_Export_AllDimensions( itk::RGBPixel< unsigned short > );
+cpPlugins_Image_Export_AllDimensions( itk::RGBPixel< unsigned int > );
+cpPlugins_Image_Export_AllDimensions( itk::RGBPixel< unsigned long > );
+
+cpPlugins_Image_Export_AllDimensions( itk::RGBAPixel< char > );
+cpPlugins_Image_Export_AllDimensions( itk::RGBAPixel< short > );
+cpPlugins_Image_Export_AllDimensions( itk::RGBAPixel< int > );
+cpPlugins_Image_Export_AllDimensions( itk::RGBAPixel< long > );
+cpPlugins_Image_Export_AllDimensions( itk::RGBAPixel< unsigned char > );
+cpPlugins_Image_Export_AllDimensions( itk::RGBAPixel< unsigned short > );
+cpPlugins_Image_Export_AllDimensions( itk::RGBAPixel< unsigned int > );
+cpPlugins_Image_Export_AllDimensions( itk::RGBAPixel< unsigned long > );
+
+cpPlugins_ImageArray_Export_AllDimensions( Vector, float );
+cpPlugins_ImageArray_Export_AllDimensions( Vector, double );
+
+cpPlugins_ImageArray_Export_AllDimensions( CovariantVector, float );
+cpPlugins_ImageArray_Export_AllDimensions( CovariantVector, double );
+
+cpPlugins_ImageArray_Export_AllDimensions( Point, float );
+cpPlugins_ImageArray_Export_AllDimensions( Point, double );
+
+cpPlugins_ImageArray_Export_AllDimensions(
+ SymmetricSecondRankTensor, float
+ );
+cpPlugins_ImageArray_Export_AllDimensions(
+ SymmetricSecondRankTensor, double
+ );
+
+cpPlugins_Image_Export( itk::DiffusionTensor3D< float >, 3 );
+cpPlugins_Image_Export( itk::DiffusionTensor3D< double >, 3 );
+cpPlugins_Image_Export( itk::Offset< 2 >, 2 );
+cpPlugins_Image_Export( itk::Offset< 3 >, 3 );
+cpPlugins_Image_Export( itk::Offset< 4 >, 4 );
+
+// -------------------------------------------------------------------------
+// ITK<->VTK base clases
+cpPlugins_VTKImage_Export_AllDimensions( char );
+cpPlugins_VTKImage_Export_AllDimensions( short );
+cpPlugins_VTKImage_Export_AllDimensions( int );
+cpPlugins_VTKImage_Export_AllDimensions( long );
+cpPlugins_VTKImage_Export_AllDimensions( unsigned char );
+cpPlugins_VTKImage_Export_AllDimensions( unsigned short );
+cpPlugins_VTKImage_Export_AllDimensions( unsigned int );
+cpPlugins_VTKImage_Export_AllDimensions( unsigned long );
+cpPlugins_VTKImage_Export_AllDimensions( float );
+cpPlugins_VTKImage_Export_AllDimensions( double );
+
+cpPlugins_VTKImage_Export_AllDimensions( itk::RGBPixel< char > );
+cpPlugins_VTKImage_Export_AllDimensions( itk::RGBPixel< short > );
+cpPlugins_VTKImage_Export_AllDimensions( itk::RGBPixel< int > );
+cpPlugins_VTKImage_Export_AllDimensions( itk::RGBPixel< long > );
+cpPlugins_VTKImage_Export_AllDimensions( itk::RGBPixel< unsigned char > );
+cpPlugins_VTKImage_Export_AllDimensions( itk::RGBPixel< unsigned short > );
+cpPlugins_VTKImage_Export_AllDimensions( itk::RGBPixel< unsigned int > );
+cpPlugins_VTKImage_Export_AllDimensions( itk::RGBPixel< unsigned long > );
+
+cpPlugins_VTKImage_Export_AllDimensions( itk::RGBAPixel< char > );
+cpPlugins_VTKImage_Export_AllDimensions( itk::RGBAPixel< short > );
+cpPlugins_VTKImage_Export_AllDimensions( itk::RGBAPixel< int > );
+cpPlugins_VTKImage_Export_AllDimensions( itk::RGBAPixel< long > );
+cpPlugins_VTKImage_Export_AllDimensions( itk::RGBAPixel< unsigned char > );
+cpPlugins_VTKImage_Export_AllDimensions( itk::RGBAPixel< unsigned short > );
+cpPlugins_VTKImage_Export_AllDimensions( itk::RGBAPixel< unsigned int > );
+cpPlugins_VTKImage_Export_AllDimensions( itk::RGBAPixel< unsigned long > );
+
+cpPlugins_VTKImageArray_Export_AllDimensions( Vector, float );
+cpPlugins_VTKImageArray_Export_AllDimensions( Vector, double );
+
+cpPlugins_VTKImageArray_Export_AllDimensions( CovariantVector, float );
+cpPlugins_VTKImageArray_Export_AllDimensions( CovariantVector, double );
+
+cpPlugins_VTKImageArray_Export_AllDimensions( Point, float );
+cpPlugins_VTKImageArray_Export_AllDimensions( Point, double );
+
+cpPlugins_VTKImageArray_Export_AllDimensions(
+ SymmetricSecondRankTensor, float
+ );
+cpPlugins_VTKImageArray_Export_AllDimensions(
+ SymmetricSecondRankTensor, double
+ );
+
+cpPlugins_VTKImage_Export( itk::DiffusionTensor3D< float >, 3 );
+cpPlugins_VTKImage_Export( itk::DiffusionTensor3D< double >, 3 );
+
+// eof - $RCSfile$
--- /dev/null
+#include <cpPlugins/Interface/Macros.h>
+
+#include <itkMesh.h>
+#include <itkQuadEdgeMesh.h>
+
+// -------------------------------------------------------------------------
+#define cpPlugins_Mesh_Export( N, T, D ) \
+ cpPlugins_TEMPLATE_EXPORT( \
+ 2(class cpPlugins_Interface_EXPORT itk::N< T, D >) \
+ )
+
+// -------------------------------------------------------------------------
+cpPlugins_Mesh_Export( Mesh, float, 2 );
+cpPlugins_Mesh_Export( Mesh, double, 2 );
+cpPlugins_Mesh_Export( Mesh, float, 3 );
+cpPlugins_Mesh_Export( Mesh, double, 3 );
+cpPlugins_Mesh_Export( QuadEdgeMesh, float, 2 );
+cpPlugins_Mesh_Export( QuadEdgeMesh, double, 2 );
+cpPlugins_Mesh_Export( QuadEdgeMesh, float, 3 );
+cpPlugins_Mesh_Export( QuadEdgeMesh, double, 3 );
+
+// eof - $RCSfile$
--- /dev/null
+#ifndef __CPPLUGINS__INTERFACE__MACROS__H__
+#define __CPPLUGINS__INTERFACE__MACROS__H__
+
+#include <cpPlugins/Interface/cpPlugins_Interface_Export.h>
+
+/**
+ * Based upon: http://www.itk.org/Wiki/Proposals:Explicit_Instantiation
+ */
+
+// -------------------------------------------------------------------------
+#define cpPlugins_TEMPLATE_1( X1 ) \
+ X1
+#define cpPlugins_TEMPLATE_2( X1, X2 ) \
+ X1,X2
+#define cpPlugins_TEMPLATE_3( X1, X2, X3 ) \
+ X1,X2,X3
+#define cpPlugins_TEMPLATE_4( X1, X2, X3, X4 ) \
+ X1,X2,X3,X4
+#define cpPlugins_TEMPLATE_5( X1, X2, X3, X4, X5 ) \
+ X1,X2,X3,X4,X5
+#define cpPlugins_TEMPLATE_6( X1, X2, X3, X4, X5, X6 ) \
+ X1,X2,X3,X4,X5,X6
+#define cpPlugins_TEMPLATE_7( X1, X2, X3, X4, X5, X6, X7 ) \
+ X1,X2,X3,X4,X5,X6,X7
+#define cpPlugins_TEMPLATE_8( X1, X2, X3, X4, X5, X6, X7, X8 ) \
+ X1,X2,X3,X4,X5,X6,X7,X8
+#define cpPlugins_TEMPLATE_9( X1, X2, X3, X4, X5, X6, X7, X8, X9 ) \
+ X1,X2,X3,X4,X5,X6,X7,X8,X9
+
+#define cpPlugins_TEMPLATE_EXPORT( X ) \
+ template cpPlugins_TEMPLATE_##X;
+#define cpPlugins_TEMPLATE_IMPORT( X ) \
+ extern template cpPlugins_TEMPLATE_##X;
+
+/* TODO
+ #define cpPlugins_EXPORT_TEMPLATE( E, c, T ) \
+ cpPlugins_TEMPLATE_##c( cpPlugins_TEMPLATE_EXPORT, E, T )
+ #define cpPlugins_IMPORT_TEMPLATE( E, c, T ) \
+ cpPlugins_TEMPLATE_##c( cpPlugins_TEMPLATE_IMPORT, E, T )
+*/
+
+#endif // __CPPLUGINS__INTERFACE__MACROS__H__
+
+// eof - $RCSfile$
);
}
-/*
-void cpPlugins::Interface::Mesh::
-SetITKDataObject( itk::DataObject* o )
-{
- // TODO: conversion!!!
- std::cout << "Mesh: SetITKDataObject " << std::endl;
- std::exit( 1 );
-}
-
-// -------------------------------------------------------------------------
-void cpPlugins::Interface::Mesh::
-SetVTKDataObject( vtkDataObject* o )
-{
- if( dynamic_cast< vtkPolyData* >( o ) != NULL )
- {
- this->m_VTKObject = o;
-
- // TODO: conversion!!!
- }
- else
- this->m_VTKObject = NULL;
-}
-
-// -------------------------------------------------------------------------
-vtkPolyData* cpPlugins::Interface::Mesh::
-GetVTKPolyData( )
-{
- return( dynamic_cast< vtkPolyData* >( this->m_VTKObject.GetPointer( ) ) );
-}
-
-// -------------------------------------------------------------------------
-const vtkPolyData* cpPlugins::Interface::Mesh::
-GetVTKPolyData( ) const
-{
- return(
- dynamic_cast< const vtkPolyData* >( this->m_VTKObject.GetPointer( ) )
- );
-}
-*/
-
// -------------------------------------------------------------------------
cpPlugins::Interface::Mesh::
Mesh( )
{
}
-// -------------------------------------------------------------------------
-/* TODO
-template< unsigned int D >
-void cpPlugins::Interface::Mesh::
-_ITK_2_VTK_0( itk::DataObject* o )
-{
-}
-
-// -------------------------------------------------------------------------
-template< class P, unsigned int D >
-void cpPlugins::Interface::Mesh::
-_ITK_2_VTK_1( itk::DataObject* o )
-{
-}
-
-// -------------------------------------------------------------------------
-template< unsigned int D >
-void cpPlugins::Interface::Mesh::
-_VTK_2_ITK_0( itk::DataObject* o )
-{
-}
-
-// -------------------------------------------------------------------------
-template< class P, unsigned int D >
-void cpPlugins::Interface::Mesh::
-_VTK_2_ITK_1( itk::DataObject* o )
-{
-}
-*/
-
// eof - $RCSfile$
virtual vtkPolyData* GetVTKMesh( );
virtual const vtkPolyData* GetVTKMesh( ) const;
- /* TODO
- virtual void SetITKDataObject( itk::DataObject* o );
- virtual void SetVTKDataObject( vtkDataObject* o );
-
- vtkPolyData* GetVTKPolyData( );
- const vtkPolyData* GetVTKPolyData( ) const;
- */
-
protected:
Mesh( );
virtual ~Mesh( );
- /* TODO
- template< unsigned int D >
- void _ITK_2_VTK_0( itk::DataObject* o );
-
- template< class P, unsigned int D >
- void _ITK_2_VTK_1( itk::DataObject* o );
-
- template< unsigned int D >
- void _VTK_2_ITK_0( itk::DataObject* o );
-
- template< class P, unsigned int D >
- void _VTK_2_ITK_1( itk::DataObject* o );
- */
-
private:
// Purposely not implemented
Mesh( const Self& );
#ifndef __CPPLUGINS__INTERFACE__MESH__HXX__
#define __CPPLUGINS__INTERFACE__MESH__HXX__
+#include <cpPlugins/Interface/Macros.h>
+
+#include <itkMesh.h>
+#include <itkQuadEdgeMesh.h>
+
+// -------------------------------------------------------------------------
+#define cpPlugins_Mesh_Import( N, T, D ) \
+ cpPlugins_TEMPLATE_IMPORT( \
+ 2(class cpPlugins_Interface_EXPORT itk::N< T, D >) \
+ )
+
+// -------------------------------------------------------------------------
+cpPlugins_Mesh_Import( Mesh, float, 2 );
+cpPlugins_Mesh_Import( Mesh, double, 2 );
+cpPlugins_Mesh_Import( Mesh, float, 3 );
+cpPlugins_Mesh_Import( Mesh, double, 3 );
+cpPlugins_Mesh_Import( QuadEdgeMesh, float, 2 );
+cpPlugins_Mesh_Import( QuadEdgeMesh, double, 2 );
+cpPlugins_Mesh_Import( QuadEdgeMesh, float, 3 );
+cpPlugins_Mesh_Import( QuadEdgeMesh, double, 3 );
+
// -------------------------------------------------------------------------
template< class M >
void cpPlugins::Interface::Mesh::
#include <Pluma/Pluma.hpp>
#include <cpPlugins/Interface/cpPlugins_Interface_Export.h>
-#define ITK_MANUAL_INSTANTIATION
#include <itkObject.h>
#include <itkObjectFactory.h>
#include <cpPlugins/Interface/DataObject.h>
#include <cpPlugins/Interface/Parameters.h>
-#define ITK_MANUAL_INSTANTIATION
#include <itkProcessObject.h>
namespace cpPlugins
_Input( unsigned int idx ) const
{
if( idx < this->m_Inputs.size( ) )
- return( dynamic_cast< const T* >( this->m_Inputs[ idx ].GetPointer( ) ) );
+ return(
+ dynamic_cast< const T* >( this->m_Inputs[ idx ].GetPointer( ) )
+ );
else
return( NULL );
}
_Output( unsigned int idx ) const
{
if( idx < this->m_Outputs.size( ) )
- return( dynamic_cast< const T* >( this->m_Outputs[ idx ].GetPointer( ) ) );
+ return(
+ dynamic_cast< const T* >( this->m_Outputs[ idx ].GetPointer( ) )
+ );
else
return( NULL );
}
SET(
LIB_HEADERS_H
ImageReader.h
- ImageWriter.h
- MeshReader.h
- MeshWriter.h
- MarchingCubes.h
- OtsuThresholdImageFilter.h
+ #ImageWriter.h
+ #MeshReader.h
+ #MeshWriter.h
+ #MarchingCubes.h
+ #OtsuThresholdImageFilter.h
)
SET(
LIB_SOURCES_CXX
- Instances_itkImage.cxx
- Instances_itkMesh.cxx
Host.cxx
ImageReader.cxx
- ImageWriter.cxx
- MeshReader.cxx
- MeshWriter.cxx
- MarchingCubes.cxx
- OtsuThresholdImageFilter.cxx
+ #ImageWriter.cxx
+ #MeshReader.cxx
+ #MeshWriter.cxx
+ #MarchingCubes.cxx
+ #OtsuThresholdImageFilter.cxx
)
## =====================
TARGET_LINK_LIBRARIES(
${LIBRARY_NAME}
cpPlugins_Interface
- ${ITK_LIBRARIES}
- ${VTK_LIBRARIES}
+ #${ITK_LIBRARIES}
+ #${VTK_LIBRARIES}
)
## ========================
#include <Pluma/Connector.hpp>
#include <cpPlugins/Plugins/ImageReader.h>
+/*
#include <cpPlugins/Plugins/ImageWriter.h>
#include <cpPlugins/Plugins/MeshReader.h>
#include <cpPlugins/Plugins/MeshWriter.h>
#include <cpPlugins/Plugins/MarchingCubes.h>
#include <cpPlugins/Plugins/OtsuThresholdImageFilter.h>
-
+*/
/*
#include <cpPlugins/Plugins/ImageSeriesReader.h>
#include <cpPlugins/Plugins/MeshReader.h>
using namespace cpPlugins::Plugins;
host.add( new ImageReaderProvider( ) );
+ /*
host.add( new ImageWriterProvider( ) );
host.add( new MeshReaderProvider( ) );
host.add( new MeshWriterProvider( ) );
host.add( new MarchingCubesProvider( ) );
host.add( new OtsuThresholdImageFilterProvider( ) );
+ */
/*
host.add( new ImageSeriesReaderProvider( ) );
#include <cpPlugins/Plugins/ImageReader.h>
#include <cpPlugins/Interface/Image.h>
-#include <complex>
#include <set>
-#define ITK_MANUAL_INSTANTIATION
-#include <itkImage.h>
-
-#include <itkCovariantVector.h>
-#include <itkDiffusionTensor3D.h>
-#include <itkPoint.h>
-#include <itkRGBPixel.h>
-#include <itkRGBAPixel.h>
-#include <itkSymmetricSecondRankTensor.h>
-#include <itkVector.h>
-
-#undef ITK_MANUAL_INSTANTIATION
#include <itkImageFileReader.h>
#include <itkImageSeriesReader.h>
#include <cpPlugins/Plugins/cpPlugins_Export.h>
#include <cpPlugins/Interface/BaseProcessObjects.h>
-#define ITK_MANUAL_INSTANTIATION
-#include <itkImageIOBase.h>
+namespace itk
+{
+ class ImageIOBase;
+}
namespace cpPlugins
{
{
/**
*/
- class /*cpPlugins_EXPORT*/ ImageReader
+ class cpPlugins_EXPORT ImageReader
: public cpPlugins::Interface::ImageSource
{
public:
+++ /dev/null
-#include <cpPlugins/Plugins/cpPlugins_Export.h>
-
-#include <complex>
-
-#undef ITK_MANUAL_INSTANTIATION
-#include <itkImage.h>
-#include <itkImportImageContainer.h>
-#include <itkImageToVTKImageFilter.h>
-
-#include <itkCovariantVector.h>
-#include <itkDiffusionTensor3D.h>
-#include <itkPoint.h>
-#include <itkRGBPixel.h>
-#include <itkRGBAPixel.h>
-#include <itkSymmetricSecondRankTensor.h>
-#include <itkVector.h>
-
-// -------------------------------------------------------------------------
-#define cpPlugins_I_itk( p, d ) \
- template class cpPlugins_EXPORT itk::Image< p, d >;
-
-// -------------------------------------------------------------------------
-#define cpPlugins_I_itk_array( a, p, da, di ) \
- template class cpPlugins_EXPORT itk::Image< a< p, da >, di >;
-
-// -------------------------------------------------------------------------
-#define cpPlugins_I_itk_Container( p ) \
- template class cpPlugins_EXPORT \
- itk::ImportImageContainer< itk::SizeValueType, p >;
-
-// -------------------------------------------------------------------------
-#define cpPlugins_I_itk_array_Container( a, p, d ) \
- template class cpPlugins_EXPORT \
- itk::ImportImageContainer< itk::SizeValueType, a< p, d > >;
-
-// -------------------------------------------------------------------------
-#define cpPlugins_I_itk_vtk( p, d ) \
- template class cpPlugins_EXPORT \
- itk::ImageToVTKImageFilter< itk::Image< p, d > >;
-
-// -------------------------------------------------------------------------
-#define cpPlugins_I_itk_vtk_array( a, p, da, di ) \
- template class cpPlugins_EXPORT \
- itk::ImageToVTKImageFilter< itk::Image< a< p, da > , di > >;
-
-// -------------------------------------------------------------------------
-// Possible itk types
-
-namespace itk
-{
- /* TODO
- template cpPlugins_EXPORT std::ostream& operator<<(
- std::ostream& os, const ImageRegion< 1 >& obj
- );
- template class cpPlugins_EXPORT Point< double, 1 >;
- template class cpPlugins_EXPORT Vector< double, 1 >;
- */
-
-} // ecapseman
-
-cpPlugins_I_itk_Container( char );
-cpPlugins_I_itk_Container( short );
-cpPlugins_I_itk_Container( int );
-cpPlugins_I_itk_Container( long );
-cpPlugins_I_itk_Container( unsigned char );
-cpPlugins_I_itk_Container( unsigned short );
-cpPlugins_I_itk_Container( unsigned int );
-cpPlugins_I_itk_Container( unsigned long );
-cpPlugins_I_itk_Container( float );
-cpPlugins_I_itk_Container( double );
-cpPlugins_I_itk_Container( std::complex< float > );
-cpPlugins_I_itk_Container( std::complex< double > );
-cpPlugins_I_itk_Container( itk::RGBPixel< char > );
-cpPlugins_I_itk_Container( itk::RGBPixel< short > );
-cpPlugins_I_itk_Container( itk::RGBPixel< unsigned char > );
-cpPlugins_I_itk_Container( itk::RGBPixel< unsigned short > );
-cpPlugins_I_itk_Container( itk::RGBAPixel< char > );
-cpPlugins_I_itk_Container( itk::RGBAPixel< short > );
-cpPlugins_I_itk_Container( itk::RGBAPixel< unsigned char > );
-cpPlugins_I_itk_Container( itk::RGBAPixel< unsigned short > );
-cpPlugins_I_itk_Container( itk::Offset< 2 > );
-cpPlugins_I_itk_Container( itk::Offset< 3 > );
-cpPlugins_I_itk_Container( itk::Offset< 4 > );
-cpPlugins_I_itk_array_Container( itk::Vector, float, 2 );
-cpPlugins_I_itk_array_Container( itk::Vector, double, 2 );
-cpPlugins_I_itk_array_Container( itk::Vector, float, 3 );
-cpPlugins_I_itk_array_Container( itk::Vector, double, 3 );
-cpPlugins_I_itk_array_Container( itk::Vector, float, 4 );
-cpPlugins_I_itk_array_Container( itk::Vector, double, 4 );
-cpPlugins_I_itk_array_Container( itk::Point, float, 2 );
-cpPlugins_I_itk_array_Container( itk::Point, double, 2 );
-cpPlugins_I_itk_array_Container( itk::Point, float, 3 );
-cpPlugins_I_itk_array_Container( itk::Point, double, 3 );
-cpPlugins_I_itk_array_Container( itk::Point, float, 4 );
-cpPlugins_I_itk_array_Container( itk::Point, double, 4 );
-cpPlugins_I_itk_array_Container( itk::CovariantVector, float, 2 );
-cpPlugins_I_itk_array_Container( itk::CovariantVector, double, 2 );
-cpPlugins_I_itk_array_Container( itk::CovariantVector, float, 3 );
-cpPlugins_I_itk_array_Container( itk::CovariantVector, double, 3 );
-cpPlugins_I_itk_array_Container( itk::CovariantVector, float, 4 );
-cpPlugins_I_itk_array_Container( itk::CovariantVector, double, 4 );
-cpPlugins_I_itk_array_Container( itk::SymmetricSecondRankTensor, float, 2 );
-cpPlugins_I_itk_array_Container( itk::SymmetricSecondRankTensor, double, 2 );
-cpPlugins_I_itk_array_Container( itk::SymmetricSecondRankTensor, float, 3 );
-cpPlugins_I_itk_array_Container( itk::SymmetricSecondRankTensor, double, 3 );
-cpPlugins_I_itk_array_Container( itk::SymmetricSecondRankTensor, float, 4 );
-cpPlugins_I_itk_array_Container( itk::SymmetricSecondRankTensor, double, 4 );
-cpPlugins_I_itk_Container( itk::DiffusionTensor3D< float > );
-cpPlugins_I_itk_Container( itk::DiffusionTensor3D< double > );
-
-cpPlugins_I_itk( char, 2 );
-cpPlugins_I_itk( short, 2 );
-cpPlugins_I_itk( int, 2 );
-cpPlugins_I_itk( long, 2 );
-cpPlugins_I_itk( unsigned char, 2 );
-cpPlugins_I_itk( unsigned short, 2 );
-cpPlugins_I_itk( unsigned int, 2 );
-cpPlugins_I_itk( unsigned long, 2 );
-cpPlugins_I_itk( float, 2 );
-cpPlugins_I_itk( double, 2 );
-
-cpPlugins_I_itk( char, 3 );
-cpPlugins_I_itk( short, 3 );
-cpPlugins_I_itk( int, 3 );
-cpPlugins_I_itk( long, 3 );
-cpPlugins_I_itk( unsigned char, 3 );
-cpPlugins_I_itk( unsigned short, 3 );
-cpPlugins_I_itk( unsigned int, 3 );
-cpPlugins_I_itk( unsigned long, 3 );
-cpPlugins_I_itk( float, 3 );
-cpPlugins_I_itk( double, 3 );
-
-cpPlugins_I_itk( char, 4 );
-cpPlugins_I_itk( short, 4 );
-cpPlugins_I_itk( int, 4 );
-cpPlugins_I_itk( long, 4 );
-cpPlugins_I_itk( unsigned char, 4 );
-cpPlugins_I_itk( unsigned short, 4 );
-cpPlugins_I_itk( unsigned int, 4 );
-cpPlugins_I_itk( unsigned long, 4 );
-cpPlugins_I_itk( float, 4 );
-cpPlugins_I_itk( double, 4 );
-
-cpPlugins_I_itk( std::complex< float >, 2 );
-cpPlugins_I_itk( std::complex< double >, 2 );
-cpPlugins_I_itk( std::complex< float >, 3 );
-cpPlugins_I_itk( std::complex< double >, 3 );
-cpPlugins_I_itk( std::complex< float >, 4 );
-cpPlugins_I_itk( std::complex< double >, 4 );
-
-cpPlugins_I_itk( itk::RGBPixel< char >, 2 );
-cpPlugins_I_itk( itk::RGBPixel< short >, 2 );
-cpPlugins_I_itk( itk::RGBPixel< unsigned char >, 2 );
-cpPlugins_I_itk( itk::RGBPixel< unsigned short >, 2 );
-cpPlugins_I_itk( itk::RGBPixel< char >, 3 );
-cpPlugins_I_itk( itk::RGBPixel< short >, 3 );
-cpPlugins_I_itk( itk::RGBPixel< unsigned char >, 3 );
-cpPlugins_I_itk( itk::RGBPixel< unsigned short >, 3 );
-cpPlugins_I_itk( itk::RGBPixel< char >, 4 );
-cpPlugins_I_itk( itk::RGBPixel< short >, 4 );
-cpPlugins_I_itk( itk::RGBPixel< unsigned char >, 4 );
-cpPlugins_I_itk( itk::RGBPixel< unsigned short >, 4 );
-
-cpPlugins_I_itk( itk::RGBAPixel< char >, 2 );
-cpPlugins_I_itk( itk::RGBAPixel< short >, 2 );
-cpPlugins_I_itk( itk::RGBAPixel< unsigned char >, 2 );
-cpPlugins_I_itk( itk::RGBAPixel< unsigned short >, 2 );
-cpPlugins_I_itk( itk::RGBAPixel< char >, 3 );
-cpPlugins_I_itk( itk::RGBAPixel< short >, 3 );
-cpPlugins_I_itk( itk::RGBAPixel< unsigned char >, 3 );
-cpPlugins_I_itk( itk::RGBAPixel< unsigned short >, 3 );
-cpPlugins_I_itk( itk::RGBAPixel< char >, 4 );
-cpPlugins_I_itk( itk::RGBAPixel< short >, 4 );
-cpPlugins_I_itk( itk::RGBAPixel< unsigned char >, 4 );
-cpPlugins_I_itk( itk::RGBAPixel< unsigned short >, 4 );
-
-cpPlugins_I_itk( itk::Offset< 2 >, 2 );
-cpPlugins_I_itk( itk::Offset< 3 >, 3 );
-cpPlugins_I_itk( itk::Offset< 4 >, 4 );
-
-cpPlugins_I_itk_array( itk::Vector, float, 2, 2 );
-cpPlugins_I_itk_array( itk::Vector, double, 2, 2 );
-cpPlugins_I_itk_array( itk::Vector, float, 3, 3 );
-cpPlugins_I_itk_array( itk::Vector, double, 3, 3 );
-cpPlugins_I_itk_array( itk::Vector, float, 4, 4 );
-cpPlugins_I_itk_array( itk::Vector, double, 4, 4 );
-
-cpPlugins_I_itk_array( itk::Point, float, 2, 2 );
-cpPlugins_I_itk_array( itk::Point, double, 2, 2 );
-cpPlugins_I_itk_array( itk::Point, float, 3, 3 );
-cpPlugins_I_itk_array( itk::Point, double, 3, 3 );
-cpPlugins_I_itk_array( itk::Point, float, 4, 4 );
-cpPlugins_I_itk_array( itk::Point, double, 4, 4 );
-
-cpPlugins_I_itk_array( itk::CovariantVector, float, 2, 2 );
-cpPlugins_I_itk_array( itk::CovariantVector, double, 2, 2 );
-cpPlugins_I_itk_array( itk::CovariantVector, float, 3, 3 );
-cpPlugins_I_itk_array( itk::CovariantVector, double, 3, 3 );
-cpPlugins_I_itk_array( itk::CovariantVector, float, 4, 4 );
-cpPlugins_I_itk_array( itk::CovariantVector, double, 4, 4 );
-
-cpPlugins_I_itk_array( itk::SymmetricSecondRankTensor, float, 2, 2 );
-cpPlugins_I_itk_array( itk::SymmetricSecondRankTensor, double, 2, 2 );
-cpPlugins_I_itk_array( itk::SymmetricSecondRankTensor, float, 3, 3 );
-cpPlugins_I_itk_array( itk::SymmetricSecondRankTensor, double, 3, 3 );
-cpPlugins_I_itk_array( itk::SymmetricSecondRankTensor, float, 4, 4 );
-cpPlugins_I_itk_array( itk::SymmetricSecondRankTensor, double, 4, 4 );
-
-cpPlugins_I_itk( itk::DiffusionTensor3D< float >, 3 );
-cpPlugins_I_itk( itk::DiffusionTensor3D< double >, 3 );
-
-/* TODO
- * itk::FixedArray
- * itk::Matrix
- */
-
-// -------------------------------------------------------------------------
-// Possible itk types that could be connected to vtk
-
-cpPlugins_I_itk_vtk( char, 2 );
-cpPlugins_I_itk_vtk( short, 2 );
-cpPlugins_I_itk_vtk( int, 2 );
-cpPlugins_I_itk_vtk( long, 2 );
-cpPlugins_I_itk_vtk( unsigned char, 2 );
-cpPlugins_I_itk_vtk( unsigned short, 2 );
-cpPlugins_I_itk_vtk( unsigned int, 2 );
-cpPlugins_I_itk_vtk( unsigned long, 2 );
-cpPlugins_I_itk_vtk( float, 2 );
-cpPlugins_I_itk_vtk( double, 2 );
-
-cpPlugins_I_itk_vtk( char, 3 );
-cpPlugins_I_itk_vtk( short, 3 );
-cpPlugins_I_itk_vtk( int, 3 );
-cpPlugins_I_itk_vtk( long, 3 );
-cpPlugins_I_itk_vtk( unsigned char, 3 );
-cpPlugins_I_itk_vtk( unsigned short, 3 );
-cpPlugins_I_itk_vtk( unsigned int, 3 );
-cpPlugins_I_itk_vtk( unsigned long, 3 );
-cpPlugins_I_itk_vtk( float, 3 );
-cpPlugins_I_itk_vtk( double, 3 );
-
-cpPlugins_I_itk_vtk( itk::RGBPixel< char >, 2 );
-cpPlugins_I_itk_vtk( itk::RGBPixel< short >, 2 );
-cpPlugins_I_itk_vtk( itk::RGBPixel< unsigned char >, 2 );
-cpPlugins_I_itk_vtk( itk::RGBPixel< unsigned short >, 2 );
-cpPlugins_I_itk_vtk( itk::RGBPixel< char >, 3 );
-cpPlugins_I_itk_vtk( itk::RGBPixel< short >, 3 );
-cpPlugins_I_itk_vtk( itk::RGBPixel< unsigned char >, 3 );
-cpPlugins_I_itk_vtk( itk::RGBPixel< unsigned short >, 3 );
-
-cpPlugins_I_itk_vtk( itk::RGBAPixel< char >, 2 );
-cpPlugins_I_itk_vtk( itk::RGBAPixel< short >, 2 );
-cpPlugins_I_itk_vtk( itk::RGBAPixel< unsigned char >, 2 );
-cpPlugins_I_itk_vtk( itk::RGBAPixel< unsigned short >, 2 );
-cpPlugins_I_itk_vtk( itk::RGBAPixel< char >, 3 );
-cpPlugins_I_itk_vtk( itk::RGBAPixel< short >, 3 );
-cpPlugins_I_itk_vtk( itk::RGBAPixel< unsigned char >, 3 );
-cpPlugins_I_itk_vtk( itk::RGBAPixel< unsigned short >, 3 );
-
-cpPlugins_I_itk_vtk_array( itk::Vector, float, 2, 2 );
-cpPlugins_I_itk_vtk_array( itk::Vector, double, 2, 2 );
-cpPlugins_I_itk_vtk_array( itk::Vector, float, 3, 3 );
-cpPlugins_I_itk_vtk_array( itk::Vector, double, 3, 3 );
-
-cpPlugins_I_itk_vtk_array( itk::Point, float, 2, 2 );
-cpPlugins_I_itk_vtk_array( itk::Point, double, 2, 2 );
-cpPlugins_I_itk_vtk_array( itk::Point, float, 3, 3 );
-cpPlugins_I_itk_vtk_array( itk::Point, double, 3, 3 );
-
-cpPlugins_I_itk_vtk_array( itk::CovariantVector, float, 2, 2 );
-cpPlugins_I_itk_vtk_array( itk::CovariantVector, double, 2, 2 );
-cpPlugins_I_itk_vtk_array( itk::CovariantVector, float, 3, 3 );
-cpPlugins_I_itk_vtk_array( itk::CovariantVector, double, 3, 3 );
-
-cpPlugins_I_itk_vtk_array( itk::SymmetricSecondRankTensor, float, 2, 2 );
-cpPlugins_I_itk_vtk_array( itk::SymmetricSecondRankTensor, double, 2, 2 );
-cpPlugins_I_itk_vtk_array( itk::SymmetricSecondRankTensor, float, 3, 3 );
-cpPlugins_I_itk_vtk_array( itk::SymmetricSecondRankTensor, double, 3, 3 );
-
-cpPlugins_I_itk_vtk( itk::DiffusionTensor3D< float >, 3 );
-cpPlugins_I_itk_vtk( itk::DiffusionTensor3D< double >, 3 );
-
-// eof - $RCSfile$
+++ /dev/null
-#include <cpPlugins/Plugins/cpPlugins_Export.h>
-
-#undef ITK_MANUAL_INSTANTIATION
-#include <itkMesh.h>
-#include <itkQuadEdgeMesh.h>
-
-template class cpPlugins_EXPORT itk::Mesh< float, 2 >;
-template class cpPlugins_EXPORT itk::Mesh< float, 3 >;
-template class cpPlugins_EXPORT itk::Mesh< double, 2 >;
-template class cpPlugins_EXPORT itk::Mesh< double, 3 >;
-template class cpPlugins_EXPORT itk::QuadEdgeMesh< float, 2 >;
-template class cpPlugins_EXPORT itk::QuadEdgeMesh< float, 3 >;
-template class cpPlugins_EXPORT itk::QuadEdgeMesh< double, 2 >;
-template class cpPlugins_EXPORT itk::QuadEdgeMesh< double, 3 >;
-
-// eof - $RCSfile$
// -------------------------------------------------------------------------
cpPlugins::Plugins::MeshReader::
MeshReader( )
- : Superclass( )
+ : Superclass( ),
+ m_Reader( NULL )
{
this->m_ClassName = "cpPlugins::MeshReader";
this->m_ClassCategory = "MeshReader";
cpPlugins::Plugins::MeshReader::
~MeshReader( )
{
+ if( this->m_Reader != NULL )
+ this->m_Reader = NULL;
}
// -------------------------------------------------------------------------