int vtkDataSetRemoveGhostCells::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 output vtkDataObject *input = inInfo->Get(vtkDataObject::DATA_OBJECT()); vtkDataObject *output = vtkDataObject::SafeDownCast( outInfo->Get(vtkDataObject::DATA_OBJECT())); switch(input->GetDataObjectType()) { case VTK_RECTILINEAR_GRID : RectilinearGridExecute(static_cast<vtkRectilinearGrid*>(input), static_cast<vtkRectilinearGrid*>(output)); break; case VTK_POLY_DATA : PolyDataExecute(static_cast<vtkPolyData*>(input), static_cast<vtkPolyData*>(output)); break; case VTK_UNSTRUCTURED_GRID : UnstructuredGridExecute(static_cast<vtkUnstructuredGrid*>(input), static_cast<vtkUnstructuredGrid*>(output)); break; case VTK_STRUCTURED_GRID : StructuredGridExecute(static_cast<vtkStructuredGrid*>(input), static_cast<vtkStructuredGrid*>(output)); break; default: vtkDebugMacro(<<"vtkDataSetRemoveGhostCells not set up to " "operate on this data type" ); vtkDataSet::SafeDownCast(output)->DeepCopy(input); break; } return 1; }
int vtkVisItContourFilter::RequestData( vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) { vtkInformation *inInfo = inputVector[0]->GetInformationObject(0); vtkDataSet *input = vtkDataSet::SafeDownCast( inInfo->Get(vtkDataObject::DATA_OBJECT())); if (!input) { return 0; } vtkInformation *outInfo = outputVector->GetInformationObject(0); vtkPolyData *output = vtkPolyData::SafeDownCast( outInfo->Get(vtkDataObject::DATA_OBJECT())); if (!output) { return 0; } int do_type = input->GetDataObjectType(); if (do_type == VTK_RECTILINEAR_GRID) { return RectilinearGridExecute(input, output); } else if (do_type == VTK_STRUCTURED_GRID) { return StructuredGridExecute(input, output); } else if (do_type == VTK_UNSTRUCTURED_GRID) { return UnstructuredGridExecute(input, output); } else { return GeneralExecute(input, output); } }
void vtkSlicer::Execute() { vtkDataSet *input = GetInput(); int do_type = input->GetDataObjectType(); if (do_type == VTK_RECTILINEAR_GRID) { RectilinearGridExecute(); } else if (do_type == VTK_STRUCTURED_GRID) { StructuredGridExecute(); } else if (do_type == VTK_UNSTRUCTURED_GRID) { UnstructuredGridExecute(); } else { GeneralExecute(); } }