28#ifndef OPENSWMMVIS_PLOT_RAINFALLSERIESMODEL_H
29#define OPENSWMMVIS_PLOT_RAINFALLSERIESMODEL_H
87 void setEngine(
void *engineHandle) { m_engine = engineHandle; }
88 void *
engine() const noexcept {
return m_engine; }
94 int reload(
bool reloadRainFiles);
96 const QVector<RainGageRainfall> &
gages() const noexcept {
return m_gages; }
120 void *m_engine =
nullptr;
121 QVector<RainGageRainfall> m_gages;
Definition rainfallseriesmodel.h:71
static QVector< QPointF > buildCumulativeSeries(const RainGageRainfall &g)
Cumulative-depth polyline (X msecsSinceEpoch, Y total depth).
Definition rainfallseriesmodel.cpp:181
static RainGageStats computeStats(const RainGageRainfall &g)
Definition rainfallseriesmodel.cpp:104
int reload(bool reloadRainFiles)
Re-assemble every gage's series from the engine.
Definition rainfallseriesmodel.cpp:35
void * engine() const noexcept
Definition rainfallseriesmodel.h:88
void reloaded()
reload() finished; consumers rebuild charts/tables.
const QVector< RainGageRainfall > & gages() const noexcept
Definition rainfallseriesmodel.h:96
void setEngine(void *engineHandle)
Bind the engine handle (void* keeps the header MOC-clean; registry precedent). Does not load — call r...
Definition rainfallseriesmodel.h:87
static double entryDurationSecs(const RainGageRainfall &g, int i)
Effective accrual duration of entry i in seconds: min(recording interval, spacing to the next entry).
Definition rainfallseriesmodel.cpp:92
static QVector< QPointF > buildStepSeries(const RainGageRainfall &g, Basis b)
Step-function chart points for the engine's application contract: per entry (t_i, v_i) (t_end,...
Definition rainfallseriesmodel.cpp:137
Basis
Display basis for chart series built from a gage.
Definition rainfallseriesmodel.h:76
@ CumulativeDepth
Running total depth.
@ Intensity
As resolved: units/hr, step function.
@ DepthPerInterval
Depth accrued over each entry's interval.
size_t i
Definition contourjob.cpp:27
int b
local residual indices, a < b
Definition meshquadmatch.cpp:46
Definition chartproperties.h:34
QVector< int > parent
union-find
Definition pslgminsize.cpp:176
One rain gage's metadata + resolved rainfall series.
Definition rainfallseriesmodel.h:40
QVector< double > timesOA
Absolute SWMM DateTimes, ascending.
Definition rainfallseriesmodel.h:51
int engineIndex
Definition rainfallseriesmodel.h:42
bool fileFailed
FILE source with an empty resolved series.
Definition rainfallseriesmodel.h:53
QString id
Definition rainfallseriesmodel.h:41
QVector< double > intensity
Resolved intensity, project rain units/hr.
Definition rainfallseriesmodel.h:52
int fileFormat
5 STAN_PRCP / 6 USER_CSV / -1 n.a.
Definition rainfallseriesmodel.h:45
QString timeseriesName
TIMESERIES source only.
Definition rainfallseriesmodel.h:48
int dataSource
0 = TIMESERIES, 1 = FILE.
Definition rainfallseriesmodel.h:43
double intervalSec
Definition rainfallseriesmodel.h:46
QString stationId
STAN_PRCP files only.
Definition rainfallseriesmodel.h:49
double scaleFactor
Definition rainfallseriesmodel.h:47
QString fileColumn
USER_CSV files only.
Definition rainfallseriesmodel.h:50
bool hasData() const noexcept
Definition rainfallseriesmodel.h:55
int rainType
0 INTENSITY / 1 VOLUME / 2 CUMULATIVE (authoring info).
Definition rainfallseriesmodel.h:44
Per-gage summary statistics (computed from the resolved series).
Definition rainfallseriesmodel.h:59
int sampleCount
Definition rainfallseriesmodel.h:60
QDateTime peakTime
Definition rainfallseriesmodel.h:63
double totalDepth
Project rain units.
Definition rainfallseriesmodel.h:61
qint64 longestGapSecs
Definition rainfallseriesmodel.h:67
QDateTime first
Definition rainfallseriesmodel.h:64
int gapCount
Spacings > 1.5 × recording interval.
Definition rainfallseriesmodel.h:66
double peakIntensity
Project rain units / hr.
Definition rainfallseriesmodel.h:62
QDateTime last
Definition rainfallseriesmodel.h:65