23#ifndef __PNS_ALGO_BASE_H
24#define __PNS_ALGO_BASE_H
Base class for all P&S algorithms (shoving, walkaround, line placement, dragging, etc....
const BOX2I & VisibleViewArea() const
virtual ~ALGO_BASE()
Return the instance of our router.
void SetDebugDecorator(DEBUG_DECORATOR *aDecorator)
Assign a debug decorator allowing this algo to draw extra graphics for visual debugging.
void SetLogger(LOGGER *aLogger)
virtual LOGGER * Logger()
ROUTER * Router() const
Return current router settings.
DEBUG_DECORATOR * m_debugDecorator
ALGO_BASE(ROUTER *aRouter)
ROUTING_SETTINGS & Settings() const
Return the logger object, allowing to dump geometry to a file.
DEBUG_DECORATOR * Dbg() const
Contain all persistent settings of the router, such as the mode, optimization effort,...
Push and Shove diff pair dimensions (gap) settings dialog.