# Removal of old deprecated APIs

The following APIs were deprecated in 9.1 or earlier and are now removed:

- Threading types (use C++ `std` classes instead):
  - `vtkSimpleConditionVariable` (`std::condition_variable`)
  - `vtkConditionVariable` (`std::condition_variable`)
  - `vtkMutexType`
  - `vtkSimpleMutexLock` (`std::mutex`)
  - `vtkMutexLock` (`std::lock_guard`)
  - `vtkCritSecType`
  - `vtkSimpleCriticalSection` (`std::mutex`)
- The `EvaluateLocationProjectedNode` method has been removed on the following
  classes; use `EvaluateLocation` instead:
  - `vtkBezierCurve`
  - `vtkBezierHexahedron`
  - `vtkBezierQuadrilateral`
  - `vtkBezierTetra`
  - `vtkBezierTriangle`
  - `vtkBezierWedge`
- `vtkBezierInterpolation::flattenSimplex` has been renamed to
  `::FlattenSimplex`
- `vtkBezierInterpolation::unflattenSimplex` has been renamed to
  `::UnFlattenSimplex`
- `vtkBezierInterpolation::deCasteljauSimplex` has been renamed to
  `::DeCasteljauSimplex`
- `vtkBezierInterpolation::deCasteljauSimplexDeriv` has been renamed to
  `::DeCasteljauSimplexDeriv`
- `vtkHigherOrderHexahedron::getEdgeCell` has been renamed to `::GetEdgeCell`
- `vtkHigherOrderHexahedron::getFaceCell` has been renamed to `::GetFaceCell`
- `vtkHigherOrderHexahedron::getInterp` has been renamed to `::GetInterpolation`
- `vtkHigherOrderQuadrilateral::getEdgeCell` has been renamed to `::GetEdgeCell`
- `vtkHigherOrderTetra::getEdgeCell` has been renamed to `::GetEdgeCell`
- `vtkHigherOrderTetra::getFaceCell` has been renamed to `::GetFaceCell`
- `vtkHigherOrderTriangle::eta` has been renamed to `::Eta`
- `vtkHigherOrderTriangle::deta` has been renamed to `::Deta`
- `vtkHigherOrderTriangle::getEdgeCell` has been renamed to `::GetEdgeCell`
- `vtkHigherOrderQuadrilateral::getBdyQuad` has been renamed to `::GetBoundaryQuad`
- `vtkHigherOrderQuadrilateral::getBdyTri` has been renamed to `::GetBoundaryTri`
- `vtkHigherOrderQuadrilateral::getEdgeCell` has been renamed to `::GetEdgeCell`
- `vtkHigherOrderQuadrilateral::getInterp` has been renamed to `::GetInterpolation`
- `vtkIncrementalOctreeNode::InsertPoint` without `numberOfNodes` is removed
  for the variant with it
- `vtkLine::Intersection3D` has been replaced by `vtkLine::Intersection`
- `vtkPointData::NullPoint` has been replaced by `vtkFieldData::NullData`
- `vtkSelectionNode::INDEXED_VERTICES` has been removed
- `vtkReaderExecutive` has been removed
- `vtkThreadMessager` has been removed; use C++ `std` threading support instead
- `vtkPassThroughFilter` has been replaced by `vtkPassThrough`
- `vtkXMLPPartitionedDataSetWriter` has been replaced by
  `vtkXMLPartitionedDataSetWriter`
- `vtkBlueObeliskData::GetWriteMutex` has been replaced by `::LockWriteMutex`
  and `::UnlockWriteMutex`
- `vtkThreshold::ThresholdByLower` has been replaced by `::SetLowerThreshold`
  or `::SetThresholdFunction`
- `vtkThreshold::ThresholdByUpper` has been replaced by `::SetUpperThreshold`
  or `::SetThresholdFunction`
- `vtkThreshold::ThresholdBetween` has been replaced by `::SetLowerThreshold`
  and `::SetUpperThreshold` or `::SetThresholdFunction`
- `vtkMultiBlockFromTimeSeriesFilter` has been replaced by
  `vtkGroupTimeStepsFilter`
- `vtkDataSetGhostGenerator` has been replaced by `vtkGhostCellsGenerator`
- `vtkDataSetSurfaceFilter` methods `::GetUseStrips`, `::SetUseStrips`,
  `::UseStripsOn`, and `::UseStripsOff` have been removed
- `vtkStructuredGridGhostDataGenerator` has been replaced by
  `vtkGhostCellsGenerator`
- `vtkUniformGridGhostDataGenerator` has been replaced by
  `vtkGhostCellsGenerator`
- `vtkUnstructuredGridGhostCellsGenerator` has been replaced by
  `vtkGhostCellsGenerator`
- `vtkPDataSetGhostGenerator` has been replaced by
  `vtkGhostCellsGenerator`
- `vtkPStructuredGridGhostDataGenerator` has been replaced by
  `vtkGhostCellsGenerator`
- `vtkPUniformGridGhostDataGenerator` has been replaced by
  `vtkGhostCellsGenerator`
- `vtkPUnstructuredGridGhostCellsGenerator` has been replaced by
  `vtkGhostCellsGenerator`
- `vtkOpenGLRenderer::HaveApplePrimitiveIdBug` has been removed as no supported
  macOS release has the issue anymore
- `vtkOpenGLRenderWindow` has removed the following methods:
  - `::GetBackLeftBuffer`
  - `::GetBackRightBuffer`
  - `::GetFrontLeftBuffer`
  - `::GetFrontRightBuffer`
  - `::GetBackBuffer`
  - `::GetFrontBuffer`
- `vtkOpenGLRenderWindow::GetOffScreenFramebuffer` has been replaced by
  `::GetRenderFramebuffer`
- `vtkDataEncoder::PushAndTakeReference` has been replaced by `::Push`
- `vtkGenericOpenGLRenderWindow::IsDrawable` is removed
- `vtkIOSRenderWindow::IsDrawable` is removed
- `vtkCocoaRenderWindow::IsDrawable` is removed
- `vtkRenderWindow::IsDrawable` is removed
- `vtkDIYUtilities::GetDataSets` is replaced by
  `vtkCompositeDataSet::GetDataSets`
- `vtkCurveRepresentation::*DirectionalLine*` methods have been renamed to
  `::*Directional*`
- `vtkSimpleImageFilterExample` has been removed
- `vtkExodusIIReaderPrivate::PrintData` has been renamed to `::PrintSelf`
- `vtkEnSightReader::ReplaceWildcards` has been replaced by
  `vtkGenericEnSightReader::ReplaceWildcardsHelper`
- `vtkQtSQLDatabase::*Port` has been renamed to `::*DbPort` to avoid Windows
  SDK macro collisions
- The `vtkDataSetSurfaceFilter::GetInterpolatedPointId` overload
  without `weights` has been replaced by the one with it
