Several public LSCM/HLSCM API surfaces are marked [[deprecated]] with a "will be removed in 3.0" note. Track their removal so we can simplify the public API and unblock follow-on work.
Deprecated symbols to remove
include/OpenABF/AngleBasedLSCM.hpp
AngleBasedLSCM::setPinnedVertices(std::size_t, std::size_t) → use set_pins(PinMap)
AngleBasedLSCM::Compute(Mesh::Pointer&, std::size_t pin0Idx, std::size_t pin1Idx) → use Compute(Mesh::Pointer&, const PinMap&)
include/OpenABF/HierarchicalLSCM.hpp
HierarchicalLSCM::setPinnedVertices(std::size_t, std::size_t) → use set_pins(PinMap)
HierarchicalLSCM::setLevelRatio(std::size_t) → use set_level_ratio(std::size_t)
HierarchicalLSCM::setMinCoarseVertices(std::size_t) → use set_min_coarse_vertices(std::size_t)
HierarchicalLSCM::Compute(Mesh::Pointer&, std::size_t pin0Idx, std::size_t pin1Idx) → use Compute(Mesh::Pointer&, const PinMap&)
Tasks
- Delete the deprecated overloads from the headers.
- Update or remove tests that exercise them (e.g.
HLSCM.SetPinnedVertices covers the deprecated instance/static pair).
- Re-amalgamate
single_include/OpenABF/OpenABF.hpp.
- Bump the project to
3.0.0 in CMakeLists.txt (or release-vehicle as appropriate).
Why remove
Removing the deprecated 2-pin Compute(mesh, pin0Idx, pin1Idx) overloads also unblocks adding the auto-pin tuning overload Compute(mesh, std::size_t levelRatio, std::size_t minCoarseVerts) requested in #68 — today its signature collides with the deprecated 2-pin form.
Several public LSCM/HLSCM API surfaces are marked
[[deprecated]]with a "will be removed in 3.0" note. Track their removal so we can simplify the public API and unblock follow-on work.Deprecated symbols to remove
include/OpenABF/AngleBasedLSCM.hppAngleBasedLSCM::setPinnedVertices(std::size_t, std::size_t)→ useset_pins(PinMap)AngleBasedLSCM::Compute(Mesh::Pointer&, std::size_t pin0Idx, std::size_t pin1Idx)→ useCompute(Mesh::Pointer&, const PinMap&)include/OpenABF/HierarchicalLSCM.hppHierarchicalLSCM::setPinnedVertices(std::size_t, std::size_t)→ useset_pins(PinMap)HierarchicalLSCM::setLevelRatio(std::size_t)→ useset_level_ratio(std::size_t)HierarchicalLSCM::setMinCoarseVertices(std::size_t)→ useset_min_coarse_vertices(std::size_t)HierarchicalLSCM::Compute(Mesh::Pointer&, std::size_t pin0Idx, std::size_t pin1Idx)→ useCompute(Mesh::Pointer&, const PinMap&)Tasks
HLSCM.SetPinnedVerticescovers the deprecated instance/static pair).single_include/OpenABF/OpenABF.hpp.3.0.0inCMakeLists.txt(or release-vehicle as appropriate).Why remove
Removing the deprecated 2-pin
Compute(mesh, pin0Idx, pin1Idx)overloads also unblocks adding the auto-pin tuning overloadCompute(mesh, std::size_t levelRatio, std::size_t minCoarseVerts)requested in #68 — today its signature collides with the deprecated 2-pin form.