Skip to content

Fix scoping of vtkm::CellClassification

The cell classifications were using an unscoped enum to define them. The problem was that the symbols of the enum littered the vtkm namespace without qualification. For example, it defined vtkm::NORMAL, which could easily collide with some other meaning of normal.

Change the cell classification flags to be scoped within vtkm::CellClassification. This thing behaves mostly like a scoped enum. You can use the values declared within and reference vtkm::CellClassification as a type itself. However, unlike a scoped enum, vtkm::CellClassification items can automatically be cast to and from vtkm::UInt8.

Edited by Kenneth Moreland

Merge request reports