45 QString *
error =
nullptr);
47 std::shared_ptr<const OpenSWMM::TimeSeries::TimeSeriesDataset>
dataset()
const
115 void showData(QWidget *
parent =
nullptr,
const QString &initialSeries = {});
153 MapExtent locationsExtent(
const QStringList &ids)
const;
155 void synchronizeSelection();
158 void applyAssociations(
const QJsonArray &
links);
164 QString m_sourcePath;
165 QString m_expectedId;
166 QString m_sourceError;
167 std::shared_ptr<const OpenSWMM::TimeSeries::TimeSeriesDataset> m_data;
168 QHash<QString, qsizetype>
170 QSet<QString> m_selected;
173 QHash<long long, QString> m_locationFids;
174 QJsonArray m_associations;
175 QPointer<MapCanvas> m_canvas;
176 QPointer<SelectionManager> m_selection;
177 QPointer<QWidget> m_browser;
178 QList<QMetaObject::Connection> m_connections;
179 bool m_syncing =
false;
A map layer backed by a GDAL/OGR vector dataset.
Definition gisvectorlayer.h:114
The central map display widget — QGIS-style hybrid rendering.
Definition mapcanvas.h:70
An axis-aligned bounding box in the coordinate space of a given CRS.
Definition mapextent.h:27
Abstract base class for all layers displayed in the MapCanvas.
Definition openswmmvislayer.h:133
Top-level project container managing sessions, the SWMM model layer, and persistence paths for one SW...
Definition openswmmvisworkspace.h:42
GUI-owned observation layer with read-only, independently owned source samples.
Definition timeserieslayer.h:29
void seriesSelectionChanged(const QStringList &ids)
Shared selected series changed; subscribers must not mutate source samples.
QStringList seriesForLocations(const QSet< long long > &fids) const
Definition timeserieslayer.cpp:259
SWMMObjectRef seriesRef(const QString &seriesId) const
Build a qualified external-series selection token.
Definition timeserieslayer.cpp:247
void associationResolutionChanged()
Referenced-layer availability changed; no authored relationship changed.
OpenSWMM::TimeSeries::SeriesInfo seriesInfo(const QString &id) const
Definition timeserieslayer.cpp:221
bool openTimeSeries(const QString &path, const QString &expectedDatasetId={}, QString *error=nullptr)
Validate and open metadata and the bounded station table.
Definition timeserieslayer.cpp:160
void bindCanvas(MapCanvas *canvas)
Attach/detach the canvas and its selection/lifecycle signals.
Definition timeserieslayer.cpp:399
void setSelectedSeriesIds(const QStringList &ids)
Replace collection selection and synchronize owned markers and the project bus.
Definition timeserieslayer.cpp:347
bool attachToSelectedFeature(const QStringList &ids, QString *error=nullptr)
Attach selected series to one currently selected persistent GIS/model feature.
Definition timeserieslayer.cpp:642
QJsonArray associations() const
Definition timeserieslayer.h:78
QString seriesIdForRef(const SWMMObjectRef &ref) const
Interpret a selection token belonging to this layer.
Definition timeserieslayer.cpp:251
std::shared_ptr< const OpenSWMM::TimeSeries::TimeSeriesDataset > dataset() const
Definition timeserieslayer.h:47
QString datasetId() const
Definition timeserieslayer.h:54
bool canZoomToLocations(const QStringList &ids) const
Whether exact series have an owned station or a currently resolved feature link.
Definition timeserieslayer.cpp:336
void restoreAssociations(const QJsonArray &links)
Restore validated relationship records without an undo step.
Definition timeserieslayer.cpp:569
bool zoomToLocations(const QStringList &ids)
Frame the requested source stations, falling back to links for unlocated series.
Definition timeserieslayer.cpp:342
QVector< QPair< QString, QString > > extendedMetadata() const override
Definition timeserieslayer.cpp:206
QString sourcePath() const
Definition timeserieslayer.h:52
void locateSource(QWidget *parent=nullptr)
Present a persistent-source locator; validates the expected dataset UUID.
Definition timeserieslayer.cpp:805
~TimeSeriesLayer() override
Release presentation connections; source files are never deleted.
Definition timeserieslayer.cpp:153
QStringList selectedSeriesIds() const
Definition timeserieslayer.cpp:239
void plotRequested(const QStringList &ids)
Native controller should plot these series from this layer.
void useInModelRequested(const QString &id)
Native controller should prepare an explicit model-owned copy.
void datasetChanged()
Dataset became available/unavailable; old metadata pointers remain immutable snapshots.
void requestPlot(const QStringList &ids={}, QWidget *parent=nullptr)
Request plotting, choosing series when more than one is available.
Definition timeserieslayer.cpp:765
QStringList seriesForFeature(const SWMMObjectRef &feature, const OpenSWMMVisLayer *targetLayer=nullptr) const
Find series attached to an exact live feature identity.
Definition timeserieslayer.cpp:627
QString seriesCaption(const QString &id) const
Definition timeserieslayer.cpp:227
QStringList seriesIds() const
Definition timeserieslayer.cpp:213
QString sourceError() const
Definition timeserieslayer.h:56
void showData(QWidget *parent=nullptr, const QString &initialSeries={})
Show the modeless native series/observation browser.
Definition timeserieslayer.cpp:755
QString associationStatus(const QString &id) const
Definition timeserieslayer.cpp:620
void associationsChanged()
Project relationships changed; persist sidecar metadata and mark project dirty.
void detachFeatures(const QStringList &ids)
Remove relationships as one undoable presentation edit.
Definition timeserieslayer.cpp:736
QString sourceDescription() const override
Definition timeserieslayer.h:58
QString path
Populated by the worker only after its own successful atomic creation.
Definition extensiontimeseriesaccess.cpp:32
Map layer backed by an OGR vector dataset (Shapefile, GeoJSON, GeoPackage, …), rendering features as ...
int link
Definition heatconfigdialog.cpp:65
QString target
Definition initialbedqualitydialog.cpp:51
int feature
Definition constraintaudit.cpp:156
int parent
Definition planning.cpp:199
per-project Cross-View Selection Bus.
One homogeneous source series; all identifiers retain leading zeros.
Definition timeseriesdataset.h:34
Identifies a single SWMM object.
Definition selectionmanager.h:34
One native plot hit; guarded layer plus copied series identities.
Definition timeserieslayer.h:183
QPointer< TimeSeriesLayer > layer
Borrowed eligible collection; becomes null if the layer is removed and destroyed.
Definition timeserieslayer.h:184
QStringList seriesIds
Copied stable series identities eligible at the picked map position.
Definition timeserieslayer.h:185
int y
Definition terrainerrorfield.cpp:60
double error
Definition terrainerrorfield.cpp:42
int x
Definition terrainerrorfield.cpp:60
Owning metadata and bounded sample values for native observation datasets.
QList< TimeSeriesMapHit > timeSeriesHitsAt(MapCanvas *canvas, double x, double y, double tolerance)
Find visible owned station or linked-feature series at a canvas location.
Definition timeserieslayer.cpp:841
QVector< QVector< QPointF > > links
Definition traceanalysislayer.cpp:164