Salome HOME
Porting to VTK 6.
[modules/visu.git] / src / PIPELINE / VISU_MaskPointsFilter.cxx
index d7ad8dbc3971bb2860f9416d5671f631ca4e02b8..3ea620ff81fbe74dd948f6c42e7af2d85635a79b 100644 (file)
@@ -30,6 +30,8 @@
 #include <vtkCellData.h>
 #include <vtkPoints.h>
 #include <vtkIdList.h>
+#include <vtkInformation.h>
+#include <vtkInformationVector.h>
 
 vtkStandardNewMacro(VISU_MaskPointsFilter);
 
@@ -39,8 +41,21 @@ VISU_MaskPointsFilter::VISU_MaskPointsFilter(){
 
 VISU_MaskPointsFilter::~VISU_MaskPointsFilter(){}
 
-void VISU_MaskPointsFilter::Execute(){
-  vtkPointSet *anInput = this->GetInput(), *anOutput = this->GetOutput();
+int VISU_MaskPointsFilter::RequestData(
+  vtkInformation *vtkNotUsed(request),
+  vtkInformationVector **inputVector,
+  vtkInformationVector *outputVector)
+{
+  // get the info objects
+  vtkInformation *inInfo = inputVector[0]->GetInformationObject(0);
+  vtkInformation *outInfo = outputVector->GetInformationObject(0);
+
+  // get the input and ouptut
+  vtkPointSet *anInput = vtkPointSet::SafeDownCast(
+    inInfo->Get(vtkDataObject::DATA_OBJECT()));
+  vtkPointSet *anOutput = vtkPointSet::SafeDownCast(
+    outInfo->Get(vtkDataObject::DATA_OBJECT()));
+
   anOutput->GetPointData()->CopyAllOff();
   anOutput->GetCellData()->CopyAllOff();
   anOutput->CopyStructure(anInput);
@@ -64,4 +79,5 @@ void VISU_MaskPointsFilter::Execute(){
   anOutput->SetPoints(aNewPoints);
   aNewPoints->Delete();
   aPoints->Delete();
+  return 1;
 }