Itasca C++ Interface
Loading...
Searching...
No Matches
izonefielddata.h
Go to the documentation of this file.
1// izonefielddata.h
2#pragma once
3
4#include "iblockdef.h"
5#include "module/interface/idata.h"
6
12namespace block {
13#ifdef _Win32
14 class IData;
15#endif
16 class IZoneThing;
17 class IVertexThing;
18 class IGpData;
19 class IZoneData;
20 class IFaceData;
21 class IFaceThing;
22 class IZoneInterpolate;
23 class ZoneWt;
24
33 public:
34 enum Source { ZoneSource, GpSource, BothSource, FaceSource };
35
36 // signals
38 shared::Signal<const string &> propertyChanged;
39 shared::Signal<bool> propertyActiveChanged;
40 shared::Signal<int> sourceChanged;
41 shared::Signal<bool> sourceActiveChanged;
43 shared::Signal<int> currentSourceChanged;
44 shared::Signal<bool> zoneSourceChanged;
45
46 virtual const itascaxd::IData *getIData() const = 0;
47 virtual itascaxd::IData *getIData() = 0;
49 virtual const IZoneInterpolate *getIZoneInterpolate() const = 0;
53 virtual const IZoneData *getIZoneData() const = 0;
55 virtual IZoneData *getIZoneData() = 0;
57 virtual const IGpData *getIGpData() const = 0;
59 virtual IGpData *getIGpData() = 0;
60
61 virtual const IFaceData *getIFaceData() const = 0;
62 virtual IFaceData *getIFaceData() = 0;
63
64 virtual QString getSpecificName() const = 0;
65 virtual int getCurrentSource() const = 0;
66 virtual int getSource() const = 0;
67 virtual bool getSourceActive() const = 0;
68 virtual QStringList getSourceNames() const = 0;
69 virtual QStringList getSourceKeywords() const = 0;
71 virtual string getProperty() const = 0;
73 virtual bool getPropertyActive() const = 0;
74 virtual StringList getPropertiesAvailable() const = 0;
75 virtual QList<uint> getInterestedIn() const = 0;
76
81 virtual QPair<double, quint64> getData(const DVect3 &pos) = 0;
84 virtual double getData(const IVertexThing* gp, const IZoneThing* z,
85 const IFaceThing* ft = nullptr, uint32 thread=0, uint32 block=0) = 0;
86 virtual double getData(const IZoneThing *z, const ZoneWt &wt) = 0;
92 virtual void initialize() = 0;
95 virtual void reset() = 0;
96
98 virtual void destroy() = 0;
99
100 virtual void initializeMultithreading(bool needSpatialSearch, uint32 threads) = 0;
101
102 // public slots
103 virtual void setProperty(const string &s) = 0;
104 virtual void setSource(int source) = 0;
105 virtual void setComponent(int i) = 0;
106 virtual void setQuantity(int i) = 0;
107 };
108} // namespace block
109// EoF
Definition idef.h:50
Definition basestring.h:89
This class maintains a list of scalar data . getNames() returns the names of the data available throu...
Definition ifacedata.h:19
This is the interface for FaceThing, a class that holds extra data not in the fortran arrays....
Definition ifacething.h:33
This class maintains a list of scalar data (x-position, density, velocity magnitude,...
Definition igpdata.h:19
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 field data class. This class allows access to both gp and zone scala...
Definition izonefielddata.h:32
shared::Signal< int > currentSourceChanged
This SIGNAL is emitted if the active index changes from zone based to gp, or vice versa.
Definition izonefielddata.h:43
virtual IGpData * getIGpData()=0
Returns a pointer to the gridpoint data, IGpData.
virtual const IZoneData * getIZoneData() const =0
Returns a const pointer to the zone data, IZoneData.
virtual bool getPropertyActive() const =0
Returns true if the index is set to zone property data, so that the property name is active.
virtual QPair< double, quint64 > getData(const DVect3 &pos)=0
virtual const IGpData * getIGpData() const =0
Returns a const pointer to the gridpoint data, IGpData.
shared::Signal< const string & > propertyChanged
This SIGNAL is emitted if the name of the property used for zone property data changes.
Definition izonefielddata.h:38
virtual double getData(const IVertexThing *gp, const IZoneThing *z, const IFaceThing *ft=nullptr, uint32 thread=0, uint32 block=0)=0
virtual string getProperty() const =0
Returns the property that would be retrieved if the index is set to zone property data.
virtual IZoneInterpolate * getIZoneInterpolate()=0
Returns a pointer to the zone interpolate, IZoneInterpolate.
virtual void destroy()=0
Destroys this object, returning the memory to the heap.
virtual void reset()=0
virtual const IZoneInterpolate * getIZoneInterpolate() const =0
Returns a const pointer to the zone interpolate, IZoneInterpolate.
virtual IZoneData * getIZoneData()=0
Returns a pointer to the zone data, IZoneData.
virtual void initialize()=0
Interface for accessing the zone interpolation class.
Definition izoneinterpolate.h:24
This is the interface for ZoneThing, a class that holds extra data not in the fortran arrays....
Definition izonething.h:35
Definition idata.h:16
Fortran to C++ type declarations.