24#ifndef _GEMA_RESULTS_DATA_H_
25#define _GEMA_RESULTS_DATA_H_
84 bool evalRules(
const QStringList& ruleIds =
QStringList(),
bool force =
false,
bool timeManagerPrint =
false);
85 void resetEvalAttrValue(
int attrId = -1);
124 void setCurrentTime(
double time);
A class implementing the GmResultsDataSrcInfo interface, storing the metadata and id for a result dat...
Definition gmAttributeResultsDataSrc.h:41
A class used to host the metadata and the values for all attributes added to the results data....
Definition gmAttributeResultsManager.h:60
Class representing a category with multiple logging levels.
Definition gmLog.h:58
A results rule used to send the associated data sets to the monitor server thread.
Definition gmMonitorResultsRule.h:34
Auxiliar class used to store the complete set of results data for a simulation.
Definition gmResultsData.h:58
int nextMonitoredDataSrcId()
Returns the next available monitored data src id and increments the number of monitored data srcs.
Definition gmResultsData.h:107
int numMonitoredDataSrcs() const
Returns the number of monitored data srcs (data srcs inside data sets that are associated to a monito...
Definition gmResultsData.h:113
void monitoredValueChangedDone()
A signal emitted to signalize that a sequence of monitored value changes has ended.
void enableMonitoring()
Enables the emission of the monitorValueChanged() family of signals.
Definition gmResultsData.h:116
GmResultsTimeManager * timeManager() const
Returns the results time manager.
Definition gmResultsData.h:96
void monitoredAttributeInfoChanged(int trackId, int dataSetId, QString name, QString description, int type, QString unit, int nlin, int ncol, QString format)
The signal emitted when the metadata for a monitored attribute changed.
int numMonitoredDataSets() const
Returns the number of monitored data sets (data sets associated to a monitor rule).
Definition gmResultsData.h:110
const QMap< QString, GmResultsDataSet * > & resultDataSets() const
Returns a const reference to the results data set map.
Definition gmResultsData.h:69
const QMap< QString, GmResultsRule * > & resultsRules() const
Returns a const reference to the results rules map.
Definition gmResultsData.h:75
int _timeAttributeId
The id stored in _attrManager for the standard "time" attribute.
Definition gmResultsData.h:175
int _numMonitoredDataSets
The number of data sets that are being monitored by a monitor results rule.
Definition gmResultsData.h:178
QMutex _monitorMutex
A mutex shared with the monitor thread to protect access to rule metadata, AFTER the model loading....
Definition gmResultsData.h:168
QVector< GmMonitorResultsRule * > _monitorRules
Subset of _rulesMap, storing only monitor result rules.
Definition gmResultsData.h:173
void monitoredValueChanged(int trackId, const GmResultsTrackedData &value, bool waitForMore)
The signal emitted when there is a new tracked value available. The waitForMore flag indicates that o...
int _numMonitoredDataSrcs
The sum of the number of data sources in the set of monitored data sets.
Definition gmResultsData.h:179
const QVector< GmMonitorResultsRule * > & monitorResultRules() const
Returns a const reference to the monitor results rules vector.
Definition gmResultsData.h:78
const GmLogCategory & logger() const
Returns the internal logger used by rules to emit messages.
Definition gmResultsData.h:129
int _evalRulesItem
The progress item for evalRules() calls.
Definition gmResultsData.h:181
void monitoredIndexChanged(int dataSetId, const GmResultsTrackedIndexData &value)
The signal emitted when there is a new index data available for a monitor rule.
QMap< QString, GmResultsRule * > _rulesMap
Map storing save, print and monitor result rules, keyed by rule id.
Definition gmResultsData.h:172
const GmSimulationData * simulationData() const
Returns the associated simulation data object.
Definition gmResultsData.h:90
GmResultsTimeManager * _timeManager
The results time manager. Mutable for construction on first use.
Definition gmResultsData.h:176
QMap< QString, GmResultsDataSet * > _dataSetMap
Map storing result data set, keyed by data set id.
Definition gmResultsData.h:170
bool _monitor
Is there someone monitoring data changes?
Definition gmResultsData.h:156
int nextMonitoredDataSetId()
Returns the next available monitored data set id and increments the number of monitored data sets.
Definition gmResultsData.h:104
const GmSimulationData * _simData
The simulation data object.
Definition gmResultsData.h:155
GmAttributeResultsManager * attributes() const
Returns the attribute manager.
Definition gmResultsData.h:93
GmAttributeResultsManager * _attrManager
The attribute manager storing attribute values + their matching with data sources.
Definition gmResultsData.h:174
GmLogCategory _logger
The logger object used by rules to emit messages.
Definition gmResultsData.h:184
QMutex * monitoringMutex()
Returns the mutex needed to protect access to rule metadata AFTER the model loading....
Definition gmResultsData.h:122
QMap< QString, GmResultsTimeSet * > _timeSetMap
Map storing time sets, keyed by rule id.
Definition gmResultsData.h:171
int _evalRulesCallCounterAttribute
The counter attribute used to track the number of calls to evalRules()
Definition gmResultsData.h:182
const QMap< QString, GmResultsTimeSet * > & timeSets() const
Returns a const reference to the results time set map.
Definition gmResultsData.h:72
A set storing what should be exported (saved / printed / monitored) by the result rule classes.
Definition gmResultsDataSet.h:58
A result rule represents an action that will be executed over one or more data sets at the moments (t...
Definition gmResultsRule.h:56
Collects all the time data from several TimeSet objects, controlling the next time "moments" (time,...
Definition gmResultsTimeManager.h:48
A rule specifying the execution moments (time, iterations, etc) that a result rule should be executed...
Definition gmResultsTimeSet.h:39
Auxiliar class used to store the complete set of simulation data.
Definition gmSimulationData.h:55
Declaration of the GmAttributeResultsDataSrcInfo class.
Declaration of the GmAttributeResultsManager class.
Declaration of useful configuration definitions for the Core library.
#define GMC_API_EXPORT
Macro for controlling if the class is being exported (GEMA_CORE_LIB defined) or imported (GEMA_CORE_L...
Definition gmCoreConfig.h:35
Declaration of support functions and macros for information logging.
Declaration of the GmMatrix class.
Declaration of the GmResultsTimeManager class.
GmResultsTimeManagerEvalMode
The evaluation mode for GmResultsTimeManager::nextEvalAttrValue() and lastEvalAttrValue() calls.
Definition gmResultsTimeManager.h:36
@ GM_RTM_ALL
Next and last queries will check both the interval and moment time set definitions.
Definition gmResultsTimeManager.h:39
Declaration of the GmVector class.
A tracked data value. Can be either a double vector or a string. Thanks to the implicitly shared natu...
Definition gmResultsTrackedData.h:39
The index data for a result rule, storing "evaluation point" data for node, cell or gauss based indic...
Definition gmResultsTrackedData.h:65