Itasca C++ Interface
Loading...
Searching...
No Matches
izoneinterpolate.h
Go to the documentation of this file.
1// izoneinterpolate.h
2#pragma once
3
4#include "iblockdef.h"
5
11namespace itasca {
12 class Archive2;
13 class IParse;
14}
15
16namespace block {
17 using itasca::Archive2;
18 using itasca::IParse;
19 class IZoneData;
20 class IVertexThing;
21
25 public:
33
34 // signals
36 shared::Signal<int> methodChanged; // method
38 shared::Signal<double> radRatioChanged;
40 shared::Signal<double> powerChanged;
42 shared::Signal<double> toleranceChanged;
43 shared::Signal<bool> methodActiveChanged;
45 shared::Signal<bool> radRatioActiveChanged;
47 shared::Signal<bool> powerActiveChanged;
49 shared::Signal<bool> toleranceActiveChanged;
50 shared::Signal<> changed;
51
53
55 virtual int getMethod() const = 0;
56 virtual bool getMethodActive() const = 0;
58 virtual QStringList getMethodKeywords() const = 0;
60 virtual QStringList getMethodNames() const = 0;
62 virtual double getRadRatio() const = 0;
64 virtual double getPower() const = 0;
66 virtual double getTolerance() const = 0;
68
69 virtual bool getRadRatioActive() const = 0;
71
72 virtual bool getPowerActive() const = 0;
74
75 virtual bool getToleranceActive() const = 0;
76
78
82 virtual double getGpValue(const IVertexThing* gp, const IZoneData* zoneData, uint32 thread,
83 uint32 block) const = 0;
84 virtual void setHideNull(bool b) = 0;
85 virtual bool getHideNull() const = 0;
86
88
91 virtual void initialize(const IZoneData *zoneData) = 0;
92 virtual void reset() = 0;
94 virtual void destroy() = 0;
95
96 virtual void save(Archive2 &a) const = 0;
97 virtual bool restore(Archive2 &a, quint64 label) = 0;
98 virtual bool parse(IParse &par) = 0;
99 virtual QStringList getCommandSwitches() const = 0;
100
101 // public slots
102 virtual void setActive(bool active) = 0;
104
108 virtual void setMethod(int method) = 0;
110 virtual void setRadRatio(const double &radRatio) = 0;
112 virtual void setPower(const double &power) = 0;
114 virtual void setTolerance(const double &tol) = 0;
115
116 };
117} // namespace block
118// EoF
This is the interface for VertexThing. This will be stored in a container and the ID will be stored i...
Definition ivertexthing.h:29
Access to zone scalar data in a generic way. This class maintains a list of scalar data (sxx,...
Definition izonedata.h:21
Interface for accessing the zone interpolation class.
Definition izoneinterpolate.h:24
virtual bool getRadRatioActive() const =0
Returns true if the radii ratio parameter is used during the computation.
virtual QStringList getMethodNames() const =0
Returns a QStringList comprising names corresponding to all interpolation methods,...
virtual double getTolerance() const =0
Returns the tolerance used to assess quantity gradient by the Polynomial Extrapolation method.
virtual bool getToleranceActive() const =0
Returns true if the tolerance parameter is used during the computation.
virtual void destroy()=0
Destroys the current instanciation.
virtual double getGpValue(const IVertexThing *gp, const IZoneData *zoneData, uint32 thread, uint32 block) const =0
Returns the interpolated field value at gridpoint gp.
virtual void setMethod(int method)=0
Sets the current interpolation method.
shared::Signal< double > powerChanged
Signal emitted when the power parameter is changed.
Definition izoneinterpolate.h:40
virtual double getPower() const =0
Returns the power used by the Inverse Distance Weighting method.
shared::Signal< double > toleranceChanged
Signal emitted when the tolerance parameter is changed.
Definition izoneinterpolate.h:42
virtual QStringList getMethodKeywords() const =0
Returns a QStringList comprising the keywords corresponding to all interpolation methods,...
virtual int getMethod() const =0
Returns an integer corresponding to the active interpolation method.
virtual bool getPowerActive() const =0
Returns true if the power parameter is used during the computation.
shared::Signal< bool > radRatioActiveChanged
Signal emitted when the radii ratio parameter becomes active.
Definition izoneinterpolate.h:45
Method
Interpolation method enumeration.
Definition izoneinterpolate.h:27
@ ConstMethod
Definition izoneinterpolate.h:28
@ IDWMethod
Definition izoneinterpolate.h:30
@ PolyMethod
Definition izoneinterpolate.h:31
@ AverageMethod
Definition izoneinterpolate.h:29
shared::Signal< double > radRatioChanged
Signal emitted when the radii ratio parameter is changed.
Definition izoneinterpolate.h:38
shared::Signal< int > methodChanged
Signal emitted when the interpolation method is changed.
Definition izoneinterpolate.h:36
shared::Signal< bool > toleranceActiveChanged
Signal emitted when the tolerance parameter becomes active.
Definition izoneinterpolate.h:49
virtual void setTolerance(const double &tol)=0
Sets the tolerance parameter to be used by the Polynomial Extrapolation method.
virtual void setPower(const double &power)=0
Sets the power parameter to be used by the Inverse Distance Weighting method.
shared::Signal< bool > powerActiveChanged
Signal emitted when the power parameter becomes active.
Definition izoneinterpolate.h:47
virtual void initialize(const IZoneData *zoneData)=0
Initializes the interpolation computation.
virtual void setRadRatio(const double &radRatio)=0
Sets the radii ratio parameter to be used by the Inverse Distance Weighting method.
virtual double getRadRatio() const =0
Returns the radii ratio used by the Inverse Distance Weighting method.
Interface to the main command processing class.
Definition iparse.h:50
Fortran to C++ type declarations.
namespace Itasca
Definition basememory.cpp:10