22 #ifndef __PNS_ROUTING_SETTINGS 23 #define __PNS_ROUTING_SETTINGS
void SetOptimizerEffort(PNS_OPTIMIZATION_EFFORT aEffort)
Sets the optimizer effort. Bigger means cleaner traces, but slower routing.
bool GetFreeAngleMode() const
bool SmartPads() const
Returns true if Smart Pads (optimized connections) is enabled.
bool GetSnapToPads() const
void SetMode(PNS_MODE aMode)
Sets the routing mode.
bool m_optimizeDraggedTrack
const DIRECTION_45 InitialDirection() const
void SetFreeAngleMode(bool aEnable)
void SetSuggestFinish(bool aSuggestFinish)
Enables displaying suggestions for finishing the currently placed track.
PNS_OPTIMIZATION_EFFORT m_optimizerEffort
void SetRemoveLoops(bool aRemoveLoops)
Enables/disables loop (redundant track) removal.
bool GetSnapToTracks() const
void SetCornerMode(CORNER_MODE aMode)
void SetInlineDragEnabled(bool aEnable)
void SetSmartPads(bool aSmartPads)
Enables/disables Smart Pads (optimized connections).
H/V/45 with filleted corners.
Ignore collisions, mark obstacles
int m_shoveIterationLimit
void SetOptimizeDraggedTrack(bool aEnable)
CORNER_MODE
What kind of corners to create in the line placers
bool RemoveLoops() const
Returns true if loop (redundant track) removal is on.
bool CanViolateDRC() const
TIME_LIMIT m_shoveTimeLimit
bool FollowMouse() const
Returns true if follow mouse mode is active (permanently on for the moment).
NESTED_SETTINGS is a JSON_SETTINGS that lives inside a JSON_SETTINGS.
void SetAutoPosture(bool aEnable)
PNS_OPTIMIZATION_EFFORT OptimizerEffort() const
Returns the optimizer effort. Bigger means cleaner traces, but slower routing.
void SetShoveVias(bool aShoveVias)
Enables/disables shoving vias.
bool SmoothDraggedSegments() const
Returns true if smoothing segments durign dragging is enabled.
PNS_MODE Mode() const
Returns the routing mode.
bool GetAutoPosture() const
void SetSnapToPads(bool aSnap)
void SetStartDiagonal(bool aStartDiagonal)
bool GetFixAllSegments() const
void SetCanViolateDRC(bool aViolate)
void SetSnapToTracks(bool aSnap)
int ShoveIterationLimit() const
bool m_smoothDraggedSegments
TIME_LIMIT m_walkaroundTimeLimit
H/V with filleted corners (not yet implemented)
H/V only (90-degree corners) (not yet implemented)
bool SuggestFinish()
Returns true if suggesting the finish of currently placed track is on.
CORNER_MODE GetCornerMode() const
int WalkaroundIterationLimit() const
bool JumpOverObstacles() const
Returns true if jumping over unmovable obstacles is on.
PNS_OPTIMIZATION_EFFORT
Optimization effort
ROUTING_SETTINGS(JSON_SETTINGS *aParent, const std::string &aPath)
bool ShoveVias() const
Returns true if shoving vias is enbled.
int m_walkaroundIterationLimit
bool GetOptimizeDraggedTrack() const
H/V/45 with mitered corners (default)
bool InlineDragEnabled() const
void SetSmoothDraggedSegments(bool aSmooth)
Enables/disabled smoothing segments during dragging.
void SetJumpOverObstacles(bool aJumpOverObstacles)
Enables/disables jumping over unmovable obstacles.
Push and Shove diff pair dimensions (gap) settings dialog.
void SetFixAllSegments(bool aEnable)
TIME_LIMIT ShoveTimeLimit() const
TIME_LIMIT WalkaroundTimeLimit() const