]> Creatis software - bbtk.git/blobdiff - kernel/src/bbtkVtkBlackBoxMacros.h
#3107 BBTK Bug New Normal - branch vtk7itk4 compilation with vtk7
[bbtk.git] / kernel / src / bbtkVtkBlackBoxMacros.h
index 0bf9acc1a4756efcfcdc6c5f65349bda5e0101ef..615af269c35f018852c26bf1ec82a1021b6eebd6 100644 (file)
 */
 
 
+//EED 2017-01-01 Migration VTK7
+#if VTK_MAJOR_VERSION <= 5
+
 //===========================================================================
 /// Declares a vtkImageAlgorithm-inherited AtomicBlackBox input 
-#define BBTK_DECLARE_VTK_IMAGE_ALGORITHM_INPUT(NAME,TYPE)              \
-  public:                                                              \
-  TYPE bbGetInput##NAME ()                                             \
-  { if (mVtkObject) return mVtkObject->GetImageDataInput(0); return 0; } \
-  void bbSetInput##NAME (TYPE d)                                       \
-  { if (mVtkObject) mVtkObject->SetInput( (vtkDataObject*) d); }
+  #define BBTK_DECLARE_VTK_IMAGE_ALGORITHM_INPUT(NAME,TYPE)            \
+    public:                                                            \
+    TYPE bbGetInput##NAME ()                                           \
+    { if (mVtkObject) return mVtkObject->GetImageDataInput(0); return 0; } \
+    void bbSetInput##NAME (TYPE d)                                     \
+    { if (mVtkObject) mVtkObject->SetInput( (vtkDataObject*) d); }
+#else
+//===========================================================================
+/// Declares a vtkImageAlgorithm-inherited AtomicBlackBox input 
+  #define BBTK_DECLARE_VTK_IMAGE_ALGORITHM_INPUT(NAME,TYPE)            \
+    public:                                                            \
+    TYPE bbGetInput##NAME ()                                           \
+    { if (mVtkObject) return mVtkObject->GetImageDataInput(0); return 0; } \
+    void bbSetInput##NAME (TYPE d)                                     \
+    { if (mVtkObject) mVtkObject->SetInputData( (vtkDataObject*) d); }
+
+#endif
+
 
 //===========================================================================
 
 //===========================================================================
 
 //===========================================================================
+
+//EED 2017-01-01 Migration VTK7                                        
+
+#if (VTK_MAJOR_VERSION <= 5)                                           
+
 /// Declares a vtkAlgorithm-inherited AtomicBlackBox input 
 #define BBTK_DECLARE_VTK_INPUT(NAME,TYPE)                              \
   public:                                                              \
   void bbSetInput##NAME (TYPE d)                                       \
   { if (mVtkObject)  mVtkObject->SetInput( (vtkDataObject*) d); }
 
+#endif                                                                         
+
+
+
+#if (VTK_MAJOR_VERSION >= 6)                                           
+
+/// Declares a vtkAlgorithm-inherited AtomicBlackBox input 
+#define BBTK_DECLARE_VTK_INPUT(NAME,TYPE)                              \
+  public:                                                              \
+  TYPE bbGetInput##NAME ()                                             \
+  { if (mVtkObject) return dynamic_cast<TYPE>(mVtkObject->GetInput()); \
+    return 0;}                                                         \
+  void bbSetInput##NAME (TYPE d)                                       \
+  { if (mVtkObject)  mVtkObject->SetInputData( (vtkDataObject*) d); }
+
+#endif                                                                         
+
+
 //===========================================================================
 
 //===========================================================================