Itasca C++ Interface
Loading...
Searching...
No Matches
idata.h
1#pragma once
2
3#include "fish/src/parametervalue.h"
4#include "shared/interface/signal.h"
5
6namespace itasca {
7 class Archive2;
8 class IParse;
9}
10
11namespace itascaxd {
12 using itasca::Archive2;
13 using itasca::IParse;
14 using itasca::ITensorData;
15
16 class IData : public ITensorData {
17 public:
18 using TreatAs = fish::TreatAs;
19 using Component = fish::Component;
20 using Quantity = fish::Quantity;
21
22 shared::Signal<bool> activeChanged;
23 shared::Signal<int> indexChanged;
24 shared::Signal<const QString &> indexNameChanged;
25 shared::Signal<int> componentChanged;
26 shared::Signal<bool> componentActiveChanged;
27 shared::Signal<int> treatAsChanged;
28 shared::Signal<bool> treatAsActiveChanged;
29 shared::Signal<int> quantityChanged;
30 shared::Signal<bool> quantityActiveChanged;
31 shared::Signal<int> extraChanged; // Base 1!
32 shared::Signal<bool> extraActiveChanged;
33 shared::Signal<bool> stressChanged;
34 shared::Signal<bool> stressActiveChanged;
35 shared::Signal<bool> logChanged;
36 shared::Signal<> changed;
37
38 virtual int getIndex() const=0;
39 virtual int getComponent() const=0;
40 virtual int getTreatAs() const=0;
41 virtual int getQuantity() const=0;
42 virtual int getExtra() const=0; // Base 1!
43 virtual bool getStress() const=0;
44 virtual bool getLog() const=0;
45
46 virtual IString getName() const=0;
47 virtual QString getSpecificName() const=0;
48
49 virtual bool getActive() const=0;
50 virtual bool getComponentActive() const=0;
51 virtual bool getTreatAsActive() const=0;
52 virtual bool getQuantityActive() const=0;
53 virtual bool getExtraActive() const=0;
54 virtual bool getStressActive() const=0;
55
56 virtual QStringList getNames() const=0;
57 virtual QStringList getBaseKeywords() const=0;
58 virtual std::vector<TreatAs> getAllTreatAs() const=0;
59 virtual QStringList getAllKeywords() const=0;
60
61 virtual void destroy()=0;
62 virtual QStringList getComponentNames() const=0;
63 virtual QStringList getQuantityNames() const=0;
64 virtual QStringList getQuantityKeywords() const=0;
65 virtual QStringList getTreatAsNames() const=0;
66
67 //virtual void save(QDataStream &ds) const=0;
68 //virtual void restore(QDataStream &ds)=0;
69 virtual void save(Archive2 &a) const=0;
70 virtual bool restore(Archive2 &a,uint64 label)=0;
71 virtual void remap(Archive2 &a)=0;
72
73 virtual bool parseTreatAs(IParse &par)=0;
74 virtual bool parse(IParse &par)=0;
75 virtual QString getIndexKeyword() const=0;
76 virtual QStringList getCommandSwitches() const=0;
77
78 // SLOTS
79 virtual void setActive(bool b)=0;
80 virtual void setIndex(int i)=0;
81 virtual void setIndex(const QString &s)=0;
82 virtual void setIndexFromKeyword(int i)=0;
83 virtual void setComponent(int i)=0;
84 virtual void setTreatAs(int i)=0;
85 virtual void setQuantity(int i)=0;
86 virtual void setExtra(int i)=0; // Base 1!
87 virtual void setStress(bool b)=0;
88 virtual void setLog(bool b)=0;
89
90 };
91}
92
93// EoF
Definition istring.h:14
Interface to the main command processing class.
Definition iparse.h:50
Definition idata.h:16
EXPORT_TAG const char * getName()
Definition fishexample.cpp:43
namespace Itasca
Definition basememory.cpp:14
Itasca Library standard namespace, specific to 2D or 3D.
Definition icontactmodule.h:4