Itasca C++ Interface
Loading...
Searching...
No Matches
izonedata.h
Go to the documentation of this file.
1#pragma once
2// izonedata.h
3
9namespace itascaxd {
10 class IData;
11}
12
13namespace zone {
14 class IZone;
15 using itascaxd::IData;
16
24 class IZoneData {
25 public:
26 // signals
28 shared::Signal<const string &> propertyChanged;
29 shared::Signal<bool> propertyActiveChanged;
30 shared::Signal<const StringList &> propertiesAvailableChanged;
31
32 virtual const IData *getIData() const = 0;
33 virtual IData * getIData() = 0;
34 virtual void initializeMultithreading(uint32 threads) = 0;
35
37 virtual double getData(const IZone *zone, uint32 thread = 0, uint32 block = 0) const = 0;
39 virtual string getProperty() const = 0;
40 virtual bool getPropertyActive() const = 0;
41 virtual StringList getPropertiesAvailable() const = 0;
44 virtual std::vector<uint32> getInterestedIn() const = 0;
46 virtual void destroy() = 0;
47 // public slots
48 virtual void setProperty(const string &s) = 0;
51
52 };
53} // namespace zone
54// EoF
55
Definition basestring.h:89
Definition idata.h:16
Access to zone scalar data.
Definition izonedata.h:24
virtual string getProperty() const =0
Returns the name of the property value being retrieved if the current data is Zone Property.
virtual std::vector< uint32 > getInterestedIn() const =0
virtual double getData(const IZone *zone, uint32 thread=0, uint32 block=0) const =0
Retrieves scalar data from the zone, depending on the current index and property data.
virtual void destroy()=0
Destroys this object safely across interface boundaries.
shared::Signal< const string & > propertyChanged
This SIGNAL is sent when the property name changes, used when retrieving zone properties.
Definition izonedata.h:28
Interface to provide access to a zone.
Definition izone.h:80
Itasca Library standard namespace, specific to 2D or 3D.
Definition icontactmodule.h:4