A monitor calculate and store followed data (ex:calculation between current position and references) At current time (current state of simulation is given by Parameters class) A monitor is active between startAt and stopAt time. More...
#include <Monitor.h>
Inheritance diagram for Monitor:
Collaboration diagram for Monitor:Public Types | |
| enum | type { SCALAR, SCALARSET, VECTORSET, MATRIX_33SET } |
| type of the values stored (please update typeCount and doc if you update the enum) SCALAR: the monitor store a single scalar value SCALARSET: the monitor stores a scalar value for each atom VECTORSET: the monitor stores 3 scalar values for each atom MATRIX_33SET: the monitor stores a matrix 3x3 for each atom More... | |
Public Member Functions | |
| virtual void | calculate ()=0 |
| calculate current followed data and store them in values vector More... | |
| int | getIndex () |
| int | getIndexOfValues (const unsigned int i) |
| get index i of indexes vector More... | |
| unsigned int | getNumberOfIndex () |
| get number of index in indexes vetor More... | |
| unsigned int | getNumberOfValues () |
| get number of value in values vetor More... | |
| std::string | getReferenceName () |
| double | getStartAt () |
| double | getStopAt () |
| std::string | getTargetName () |
| virtual std::string | getTypeName ()=0 |
| double | getValue (const unsigned int i) |
| get value i of values vector More... | |
| bool | getValuesOfIndex (int i, double values[]) |
| populate values with the corresponding values at index i More... | |
| Monitor::type | getValueType () |
| Monitor (mml::Monitor *m, MonitoringManager *monitoringManager, Monitor::type type) | |
| constructor More... | |
| virtual void | write () |
| write data stored in values vector into mmlOut file More... | |
| virtual | ~Monitor () |
| destructor More... | |
Static Public Attributes | |
| static const unsigned int | typeCount = 4 |
| number of possible types (siez of the previous enum). Please always update if the enum is updated. More... | |
Protected Attributes | |
| int | dimension |
| dimension of data stored More... | |
| double | dx |
| offset in x direction (if reference is not aligned) More... | |
| double | dy |
| offset in y direction (if reference is not aligned) More... | |
| double | dz |
| offset in z direction (if reference is not aligned) More... | |
| int | index |
| index of monitor More... | |
| std::vector< int > | indexes |
| vector which contains target's atoms index (in same order that values associate with) More... | |
| std::map< int, std::vector< double > > | indexToValuesMap |
| map between indexes and values More... | |
| mml::Monitor * | mappedObject |
| the xsdcxx object representing monitor, used for serialization More... | |
| MonitoringManager * | monitoringManager |
| monitoring manager More... | |
| std::vector< Reference * > | references |
| references used when monitor need references More... | |
| double | startAt |
| time to start monitoring More... | |
| double | stopAt |
| time to stop monitoring More... | |
| std::string | target |
| the name of the component targeted by the monitor More... | |
| std::vector< double > | values |
| the vector which contains data monitored More... | |
| Monitor::type | valueType |
| type of the values stored More... | |
A monitor calculate and store followed data (ex:calculation between current position and references) At current time (current state of simulation is given by Parameters class) A monitor is active between startAt and stopAt time.
| enum Monitor::type |
type of the values stored (please update typeCount and doc if you update the enum) SCALAR: the monitor store a single scalar value SCALARSET: the monitor stores a scalar value for each atom VECTORSET: the monitor stores 3 scalar values for each atom MATRIX_33SET: the monitor stores a matrix 3x3 for each atom
| Enumerator | |
|---|---|
| SCALAR | |
| SCALARSET | |
| VECTORSET | |
| MATRIX_33SET | |
| Monitor::Monitor | ( | mml::Monitor * | m, |
| MonitoringManager * | monitoringManager, | ||
| Monitor::type | type | ||
| ) |
constructor
| m | the xsdcxx generated monitor |
References AtomIterator::begin(), AtomIterator::currentAtom(), dimension, dx, dy, dz, AtomIterator::end(), Structure::getIndex(), MonitoringManager::getInitPml(), index, indexes, indexToValuesMap, mappedObject, MATRIX_33SET, monitoringManager, AtomIterator::next(), references, SCALAR, SCALARSET, startAt, stopAt, target, timeParameter2double(), values, valueType, and VECTORSET.
Here is the call graph for this function:
|
virtual |
destructor
References references.
|
pure virtual |
calculate current followed data and store them in values vector
Implemented in MonitorPointFinalSetDistance, MonitorDistanceX, MonitorPointToTriangleMeshDistanceFinal, MonitorSurface, MonitorComputingTime, MonitorDisplacement, MonitorDistanceY, MonitorDistanceZ, MonitorForce, MonitorGeometricDeviation, MonitorPointSetDistance, MonitorPosition, MonitorRen, MonitorVolume, and MonitorNormDisplacement.
| int Monitor::getIndex | ( | ) |
References index.
Referenced by MonitorForce::calculate().
Here is the caller graph for this function:| int Monitor::getIndexOfValues | ( | const unsigned int | i | ) |
get index i of indexes vector
References indexes.
Referenced by Arrows::update(), Colors::update(), and Tabular::update().
Here is the caller graph for this function:| unsigned int Monitor::getNumberOfIndex | ( | ) |
get number of index in indexes vetor
References indexes, and indexToValuesMap.
Referenced by Arrows::update(), Colors::update(), and Tabular::update().
Here is the caller graph for this function:| unsigned int Monitor::getNumberOfValues | ( | ) |
get number of value in values vetor
References values.
Referenced by Statistics::update().
Here is the caller graph for this function:| std::string Monitor::getReferenceName | ( | ) |
References references.
Referenced by MonitoringDialog::updateMonitors().
Here is the caller graph for this function:| double Monitor::getStartAt | ( | ) |
References startAt.
Referenced by MonitoringDialog::updateMonitors().
Here is the caller graph for this function:| double Monitor::getStopAt | ( | ) |
References stopAt.
Referenced by MonitoringDialog::updateMonitors().
Here is the caller graph for this function:| std::string Monitor::getTargetName | ( | ) |
References target.
Referenced by MonitoringDialog::updateMonitors().
Here is the caller graph for this function:
|
pure virtual |
Implemented in MonitorPointFinalSetDistance, MonitorDistanceX, MonitorPointToTriangleMeshDistanceFinal, MonitorSurface, MonitorComputingTime, MonitorDisplacement, MonitorDistanceY, MonitorDistanceZ, MonitorForce, MonitorGeometricDeviation, MonitorPointSetDistance, MonitorPosition, MonitorRen, MonitorVolume, and MonitorNormDisplacement.
Referenced by Arrows::update(), Colors::update(), and MonitoringDialog::updateMonitors().
Here is the caller graph for this function:| double Monitor::getValue | ( | const unsigned int | i | ) |
get value i of values vector
References values.
Referenced by Arrows::update(), Colors::update(), Statistics::update(), and Tabular::update().
Here is the caller graph for this function:| bool Monitor::getValuesOfIndex | ( | int | i, |
| double | values[] | ||
| ) |
populate values with the corresponding values at index i
References dimension, indexToValuesMap, and values.
| Monitor::type Monitor::getValueType | ( | ) |
References valueType.
Referenced by Tabular::update(), and MMLDisplay::updateMonitorsTable().
Here is the caller graph for this function:
|
virtual |
write data stored in values vector into mmlOut file
Reimplemented in MonitorVolume.
References indexes, mappedObject, and values.
Referenced by MonitorNormDisplacement::calculate(), MonitorComputingTime::calculate(), MonitorRen::calculate(), MonitorDisplacement::calculate(), MonitorDistanceY::calculate(), MonitorDistanceZ::calculate(), MonitorPointSetDistance::calculate(), MonitorForce::calculate(), MonitorGeometricDeviation::calculate(), MonitorPosition::calculate(), MonitorPointToTriangleMeshDistanceFinal::calculate(), MonitorSurface::calculate(), MonitorDistanceX::calculate(), and MonitorPointFinalSetDistance::calculate().
Here is the caller graph for this function:
|
protected |
dimension of data stored
Referenced by getValuesOfIndex(), and Monitor().
|
protected |
offset in x direction (if reference is not aligned)
Referenced by MonitorNormDisplacement::calculate(), MonitorRen::calculate(), MonitorDisplacement::calculate(), MonitorPosition::calculate(), MonitorGeometricDeviation::calculate(), MonitorPointSetDistance::calculate(), MonitorDistanceX::calculate(), MonitorPointToTriangleMeshDistanceFinal::calculate(), MonitorPointFinalSetDistance::calculate(), and Monitor().
|
protected |
offset in y direction (if reference is not aligned)
Referenced by MonitorNormDisplacement::calculate(), MonitorRen::calculate(), MonitorDisplacement::calculate(), MonitorPosition::calculate(), MonitorPointSetDistance::calculate(), MonitorGeometricDeviation::calculate(), MonitorDistanceY::calculate(), MonitorPointToTriangleMeshDistanceFinal::calculate(), MonitorPointFinalSetDistance::calculate(), and Monitor().
|
protected |
offset in z direction (if reference is not aligned)
Referenced by MonitorNormDisplacement::calculate(), MonitorRen::calculate(), MonitorDisplacement::calculate(), MonitorPosition::calculate(), MonitorPointSetDistance::calculate(), MonitorGeometricDeviation::calculate(), MonitorDistanceZ::calculate(), MonitorPointToTriangleMeshDistanceFinal::calculate(), MonitorPointFinalSetDistance::calculate(), and Monitor().
|
protected |
index of monitor
Referenced by getIndex(), and Monitor().
|
protected |
vector which contains target's atoms index (in same order that values associate with)
Referenced by getIndexOfValues(), getNumberOfIndex(), Monitor(), and write().
|
protected |
map between indexes and values
Referenced by getNumberOfIndex(), getValuesOfIndex(), and Monitor().
|
protected |
the xsdcxx object representing monitor, used for serialization
Referenced by Monitor(), MonitorVolume::write(), and write().
|
protected |
monitoring manager
Referenced by MonitorNormDisplacement::calculate(), MonitorComputingTime::calculate(), MonitorDistanceY::calculate(), MonitorRen::calculate(), MonitorPosition::calculate(), MonitorVolume::calculate(), MonitorGeometricDeviation::calculate(), MonitorPointSetDistance::calculate(), MonitorDisplacement::calculate(), MonitorDistanceZ::calculate(), MonitorForce::calculate(), MonitorPointToTriangleMeshDistanceFinal::calculate(), MonitorDistanceX::calculate(), MonitorSurface::calculate(), MonitorPointFinalSetDistance::calculate(), and Monitor().
|
protected |
references used when monitor need references
Referenced by MonitorDistanceY::calculate(), MonitorPointSetDistance::calculate(), MonitorRen::calculate(), MonitorDistanceZ::calculate(), MonitorGeometricDeviation::calculate(), MonitorDistanceX::calculate(), MonitorPointToTriangleMeshDistanceFinal::calculate(), MonitorPointFinalSetDistance::calculate(), getReferenceName(), Monitor(), and ~Monitor().
|
protected |
time to start monitoring
Referenced by getStartAt(), and Monitor().
|
protected |
time to stop monitoring
Referenced by getStopAt(), and Monitor().
|
protected |
the name of the component targeted by the monitor
Referenced by MonitorNormDisplacement::calculate(), MonitorDisplacement::calculate(), MonitorDistanceY::calculate(), MonitorRen::calculate(), MonitorVolume::calculate(), MonitorGeometricDeviation::calculate(), MonitorPointSetDistance::calculate(), MonitorDistanceZ::calculate(), MonitorPosition::calculate(), MonitorForce::calculate(), MonitorPointToTriangleMeshDistanceFinal::calculate(), MonitorSurface::calculate(), MonitorDistanceX::calculate(), MonitorPointFinalSetDistance::calculate(), getTargetName(), and Monitor().
|
static |
number of possible types (siez of the previous enum). Please always update if the enum is updated.
Referenced by MMLMonitorDisplayFactory::registerClass().
|
protected |
the vector which contains data monitored
Referenced by MonitorNormDisplacement::calculate(), MonitorDistanceY::calculate(), MonitorPosition::calculate(), MonitorRen::calculate(), MonitorDistanceZ::calculate(), MonitorVolume::calculate(), MonitorForce::calculate(), MonitorComputingTime::calculate(), MonitorDisplacement::calculate(), MonitorGeometricDeviation::calculate(), MonitorPointSetDistance::calculate(), MonitorDistanceX::calculate(), MonitorPointToTriangleMeshDistanceFinal::calculate(), MonitorSurface::calculate(), MonitorPointFinalSetDistance::calculate(), getNumberOfValues(), getValue(), getValuesOfIndex(), Monitor(), MonitorVolume::write(), and write().
|
protected |
type of the values stored
Referenced by getValueType(), and Monitor().