Salome HOME
Copyright update 2022
[modules/geom.git] / src / OCC2VTK / GEOM_VertexSource.cxx
old mode 100755 (executable)
new mode 100644 (file)
index daf61b1..8fc4e8b
@@ -1,9 +1,9 @@
-// Copyright (C) 2007-2012  CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2022  CEA/DEN, EDF R&D, OPEN CASCADE
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
 // License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+// version 2.1 of the License, or (at your option) any later version.
 //
 // This library is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of
 #include <vtkCellArray.h> 
 #include <vtkPolyData.h> 
 #include <vtkPolyDataMapper.h> 
+#include <vtkInformation.h>
+#include <vtkInformationVector.h>
  
 #include <gp_Pnt.hxx>
 #include <BRep_Tool.hxx>
  
-vtkStandardNewMacro(GEOM_VertexSource);
+vtkStandardNewMacro(GEOM_VertexSource)
  
 GEOM_VertexSource::GEOM_VertexSource() 
 { 
+  this->SetNumberOfInputPorts(0);
 } 
  
 GEOM_VertexSource::~GEOM_VertexSource() 
@@ -46,11 +49,14 @@ AddVertex(const TopoDS_Vertex& theVertex)
   myVertexSet.Add(theVertex); 
 } 
  
-void
-GEOM_VertexSource:: 
-Execute()
+int GEOM_VertexSource::RequestData(vtkInformation *vtkNotUsed(request),
+                                   vtkInformationVector **vtkNotUsed(inputVector),
+                                   vtkInformationVector *outputVector)
 {
-  vtkPolyData* aPolyData = GetOutput();
+  vtkInformation *outInfo = outputVector->GetInformationObject(0);
+  vtkPolyData *aPolyData = vtkPolyData::SafeDownCast(
+    outInfo->Get(vtkDataObject::DATA_OBJECT()));
+
   aPolyData->Allocate();
   vtkPoints* aPts = vtkPoints::New();
   aPolyData->SetPoints(aPts);
@@ -61,6 +67,7 @@ Execute()
     const TopoDS_Vertex& aVertex = anIter.Value();
     OCC2VTK(aVertex,aPolyData,aPts);
   }
+  return 1;
 }
 
 void