SWMMVis  6.0.0-alpha.4
Qt6/C++ GIS-based graphical user interface for the SWMMVis engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
selectionops.h File Reference
#include "selection/selectionmanager.h"
#include <QSet>
Include dependency graph for selectionops.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  SelectionOps::TraceResult
 Result of an upstream / downstream network trace. More...
 

Namespaces

namespace  SelectionOps
 

Functions

QSet< SWMMObjectRefSelectionOps::invert (SWMMModelLayer *model, const QSet< SWMMObjectRef > &current)
 Invert the selection, scoped to a single category when the current selection is homogeneous.
 
TraceResult SelectionOps::trace (SWMMModelLayer *model, const QSet< SWMMObjectRef > &seeds, bool upstream)
 All objects connected upstream (or downstream) of seeds.
 

Detailed Description

Author
Caleb Buahin caleb.nosp@m..bua.nosp@m.hin@g.nosp@m.mail.nosp@m..com
Date
2026
License\n GPL-3.0-or-later

Pure selection algebra over a loaded SWMMModelLayer — the logic behind the toolbar's Invert Selection / Select Upstream / Select Downstream actions.

The functions here take the current selection set and return the next one; they never touch a SelectionManager themselves. That keeps the math headless-testable (see tests/gui/test_selectionops.cpp) and lets SWMMVis's slots stay thin: build → apply → log.