# Removal of old deprecated APIs

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

- `vtkObjectBase`'s `Register` is no longer virtual. To control
  register counting/garbage collecting behavior override
  `vtkObjectBase::UsesGarbageCollector` instead. The following classes have
  been changed to meet this requirement:
  - `vtkInformationKey`
  - `vtkGarbageCollectorImpl`
- `vtkOpenFOAMReader::SetDecomposePolyhedra` has been removed.
- `vtkCriticalSection` has been removed (use `std::mutex` instead).
- `vtkHierarchicalBoxDataIterator` class removed. Use
  `vtkUniformGridAMRDataIterator` instead.
- `vtkHyperTreeCursor` class removed. Use other Hyper Tree Grid cursors
  instead.
- The following classes have been removed in favor of `vtkExtractSelection`:
  - `vtkExtractSelectedBlock`
  - `vtkExtractSelectedIds`
  - `vtkExtractSelectedLocations`
  - `vtkExtractSelectedPolyDataIds`
  - `vtkExtractSelectedThresholds`
- `vtkCompositeInterpolatedVelocityField` replaces the following classes:
  - `vtkCachingInterpolatedVelocityField`
  - `vtkCellLocatorInterpolatedVelocityField`
  - `vtkInterpolatedVelocityField`
- `vtkAbstractCellLocator` has the following members removed for thread safety:
  - `SetLazyEvaluation`
  - `GetLazyEvaluation`
  - `LazyEvaluationOn`
  - `LazyEvaluationOff`
- `vtkCellLocator::BuildLocatorIfNeeded` removed because LazyEvaluation has
  been deprecated.
- `vtkCellTree::BuildLocatorIfNeeded` removed because LazyEvaluation has been
  deprecated.
- `vtkInteractorEventRecorder::ReadEvent()` has been moved to
  `ReadEvent(const std::string&)`.
- `vtkHyperTreeGrid::GetNumberOfVertices` deprecated in favor of
  `GetNumberOfCells()`.
- `vtkVRCamera`'s `GetTrackingToDCMatrix` removed. Use
  `GetPhysicalToProjectionMatrix` instead.
- `vtkTemporalInterpolatedVelocityField`
  - `SetDataSetAtTime` removed, use `SetMeshOverTime` instead.
  - `IsStatic` removed, use `GetMeshOverTime` instead.
- `vtkParticleTracerBase`
  - `SetStaticMesh` removed, use `SetMeshOverTime` instead.
  - `GetStaticMesh` removed, use `GetMeshOverTime` instead.
- `vtkTableFFT`'s `PrefixOutputArrays` has been deprecated in favor of always
  keeping the output array names the same as the input.
- `vtkGeometryFilter`'s `SetDegree`, `GetDegreeMinValue`, `GetDegreeMaxValue`,
  `GetDegree`, `SetLocator`, `GetLocator`, and `CreateDefaultLocator` have been
  removed.
- `vtkCellTypes` location information has been removed:
  - `SetCellTypes(vtkIdType ncells, vtkUnsignedCharArray* cellTypes, vtkIdTypeArray* cellLocations)`
    use version `SetCellTypes` without `cellLocations` instead.
  - `GetCellLocation` removed.
- `vtkStaticCellLocator` no longer uses `Tolerance` which has deprecated the
  `UseDiagonalLengthTolerance` flag.
- `vtkDescriptiveStatistics`'s `UnbiasedVariance`, `G1Skewness`, and
  `G2Kurtosis` parameters have been removed. Use `SampleEstimate` instead.
- `vtkBorderRepresentation::SetBWActorDisplayOverlay` is deprecated. Use Set
  `BWActorDisplayOverlayEdges` or `SetBWActorDisplayOverlayPolygon` instead.
- `vtkOSPRayRendererNode`'s `VolumeAnisotropy` parameter has been removed.
- `vtkMeshQuality` has removed the following flags:
  - `Volume`
  - `CompatibilityMode`
- Removed `_InteractionState` typedef from the following classes:
  - `vtkQWidgetRepresentation`
  - `vtkAffineRepresentation`
  - `vtkBalloonRepresentation`
  - `vtkBorderRepresentation`
  - `vtkButtonRepresentation`
  - `vtkCompassRepresentation`
  - `vtkContinuousValueWidgetRepresentation`
  - `vtkCoordinateFrameRepresentation`
  - `vtkCurveRepresentation`
  - `vtkDisplaySizedImplicitPlaneRepresentation`
  - `vtkFinitePlaneRepresentation`
  - `vtkHandleRepresentation`
  - `vtkImplicitCylinderRepresentation`
  - `vtkImplicitPlaneRepresentation`
  - `vtkMagnifierRepresentation`
  - `vtkParallelopipedRepresentation`
  - `vtkPointCloudRepresentation`
  - `vtkRectilinearWipeRepresentation`
  - `vtkSliderRepresentation`
  - `vtkVRPanelRepresentation`
- Removed `_WidgetState` typedef from the following classes:
  - `vtkQWidgetWidget`
  - `vtkAffineWidget`
  - `vtkAxesTransformWidget`
  - `vtkBorderWidget`
  - `vtkBoxWidget2`
  - `vtkButtonWidget`
  - `vtkCameraPathWidget`
  - `vtkCenteredSliderWidget`
  - `vtkCompassWidget`
  - `vtkContinuousValueWidget`
  - `vtkCoordinateFrameWidget`
  - `vtkDisplaySizedImplicitPlaneWidget`
  - `vtkFinitePlaneWidget`
  - `vtkHandleWidget`
  - `vtkImplicitCylinderWidget`
  - `vtkImplicitPlaneWidget2`
  - `vtkLineWidget2`
  - `vtkMagnifierWidget`
  - `vtkPointCloudWidget`
  - `vtkPolyLineWidget`
  - `vtkRectilinearWipeWidget`
  - `vtkResliceCursorWidget`
  - `vtkSliderWidget`
  - `vtkSphereWidget2`
  - `vtkSplineWidget2`
  - `vtkTensorWidget`
  - `vtkVRMenuWidget`
  - `vtkVRPanelWidget`
- Removed `_HighlightState` typedef from `vtkButtonRepresentation`.
- Removed `_Picking_Mode` typedef from `vtkPointCloudRepresentation`.
- Removed `_SliderShape` typedef from `vtkSliderRepresentation3D`.
- `vtkChemistryConfigure.h` has been removed.
- `vtkMFCConfigure.h` has been removed.
