23#ifndef __PNS_ALGO_BASE_H
24#define __PNS_ALGO_BASE_H
28#include "pns_routing_settings.h"
46 m_debugDecorator(
nullptr ),
65 void SetLogger(
LOGGER* aLogger )
75 m_debugDecorator = aDecorator;
80 return m_debugDecorator;
83 const BOX2I& VisibleViewArea()
const;
86 DEBUG_DECORATOR *m_debugDecorator;
Base class for all P&S algorithms (shoving, walkaround, line placement, dragging, etc....
Definition pns_algo_base.h:43
virtual ~ALGO_BASE()
Return the instance of our router.
Definition pns_algo_base.h:51
void SetDebugDecorator(DEBUG_DECORATOR *aDecorator)
Assign a debug decorator allowing this algo to draw extra graphics for visual debugging.
Definition pns_algo_base.h:73
ROUTER * Router() const
Return current router settings.
Definition pns_algo_base.h:54
ROUTING_SETTINGS & Settings() const
Return the logger object, allowing to dump geometry to a file.
Definition pns_algo_base.cpp:28
Definition pns_debug_decorator.h:35
Definition pns_logger.h:42
Definition pns_router.h:116
Contain all persistent settings of the router, such as the mode, optimization effort,...
Definition pns_routing_settings.h:58