#include <InputModelFormProbe.hpp>
Public Member Functions | |
GenericForm * | form () const |
void | probe () override |
![]() | |
string | itemName () const override |
int | iter () const |
string | probeName () const |
void | probePrimary (int iter) |
void | probeRun () |
void | probeSecondary (int iter) |
void | probeSetup () |
![]() | |
template<class T > | |
T * | find (bool setup=true) const |
template<class T > | |
T * | interface (int levels=-999999, bool setup=true) const |
virtual string | itemName () const |
void | setup () |
string | typeAndName () const |
![]() | |
Item (const Item &)=delete | |
virtual | ~Item () |
void | addChild (Item *child) |
const vector< Item * > & | children () const |
virtual void | clearItemListProperty (const PropertyDef *property) |
void | destroyChild (Item *child) |
virtual bool | getBoolProperty (const PropertyDef *property) const |
virtual vector< double > | getDoubleListProperty (const PropertyDef *property) const |
virtual double | getDoubleProperty (const PropertyDef *property) const |
virtual string | getEnumProperty (const PropertyDef *property) const |
virtual int | getIntProperty (const PropertyDef *property) const |
virtual vector< Item * > | getItemListProperty (const PropertyDef *property) const |
virtual Item * | getItemProperty (const PropertyDef *property) const |
virtual string | getStringProperty (const PropertyDef *property) const |
int | getUtilityProperty (string name) const |
virtual void | insertIntoItemListProperty (const PropertyDef *property, int index, Item *item) |
Item & | operator= (const Item &)=delete |
Item * | parent () const |
virtual void | removeFromItemListProperty (const PropertyDef *property, int index) |
virtual void | setBoolProperty (const PropertyDef *property, bool value) |
virtual void | setDoubleListProperty (const PropertyDef *property, vector< double > value) |
virtual void | setDoubleProperty (const PropertyDef *property, double value) |
virtual void | setEnumProperty (const PropertyDef *property, string value) |
virtual void | setIntProperty (const PropertyDef *property, int value) |
virtual void | setItemProperty (const PropertyDef *property, Item *item) |
virtual void | setStringProperty (const PropertyDef *property, string value) |
void | setUtilityProperty (string name, int value) |
virtual string | type () const |
Protected Member Functions | |
InputModelFormProbe () | |
virtual void | probeImportedMedium (string sh, const ImportedMedium *medium, const Snapshot *snapshot) |
virtual void | probeImportedSources (const vector< const ImportedSource * > &sources, const vector< const Snapshot * > &snapshots) |
![]() | |
Probe () | |
virtual void | initialize () |
virtual void | probe ()=0 |
virtual When | when () const |
![]() | |
SimulationItem () | |
virtual bool | offersInterface (const std::type_info &interfaceTypeInfo) const |
virtual void | setupSelfAfter () |
virtual void | setupSelfBefore () |
![]() | |
Item () | |
Private Types | |
using | BaseType = Probe |
using | ItemType = InputModelFormProbe |
Private Attributes | |
GenericForm * | _form |
Friends | |
class | ItemRegistry |
Additional Inherited Members | |
![]() | |
enum class | When { Setup , Run , Primary , Secondary } |
InputModelFormProbe is a base class for probes that cooperate with any generic Form subclass to describe how the considered input model quantity should be probed. This does not include forms that require the spatial grid of the simulation to be present. See the ProbeFormBridge class for more information.
This class offers facilities for subclasses that probe imported source or media components. Imported sources are always handled together, i.e. aggregated system-wide, because it is not meaningful to average properties over each source individually. Imported media are handled per component, because aggregating various medium components can be ambiguous (e.g., they may be defined in terms of number or mass density). If probes would be developed that access other aspects of the input model, this may require additional functionality in this class or an extra intermediate layer of subclasses.
This item type is displayed only if the Boolean expression "Level2" evaluates to true after replacing the names by true or false depending on their presence.
|
inlineprotected |
Default constructor for abstract Item subclass InputModelFormProbe : "an input model form probe" .
|
inline |
This function returns the value of the discoverable item property form : "the form describing how this quantity should be probed" .
The default value for this property is given by the conditional value expression "ParallelProjectionForm" .
|
overridevirtual |
This function is implemented here. It invokes functions defined in the subclass as follows (see the class header form the rationale):
Implements Probe.
|
protectedvirtual |
This function should be implemented by subclasses that probe imported media. It will be called for each component of type ImportedMedium in the configured source system, in order of occurrence. The first argument is a string representation of the zero-based component index (including non-imported components). The implementation in this base class does nothing.
Reimplemented in ImportedMediumDensityProbe, ImportedMediumMetallicityProbe, ImportedMediumTemperatureProbe, and ImportedMediumVelocityProbe.
|
protectedvirtual |
This function should be implemented by subclasses that probe imported sources. It will be called only if all source components in the configured source system are of type ImportedSource and there is at least one of them. The source components and corresponding snapshots are listed in order of occurrence. The implementation in this base class does nothing.
Reimplemented in ImportedSourceDensityProbe, ImportedSourceLuminosityProbe, and ImportedSourceWeightedProbe.