Itasca C++ Interface
iprocess.h
1 #pragma once
2 // iprocess.h
3 #include "iparse.h"
4 #include "shared/interface/signal.h"
5 
6 namespace itasca {
7  class IEnergyMap;
8 }
9 
10 namespace itascaxd {
11  using namespace itasca;
12  class ISolveData;
13 
14  class IProcess {
15  public:
16  shared::Signal<bool> configuredChanged;
17  shared::Signal<const QStringList &> targetSolveLimitsChanged;
18  shared::Signal<bool> followerChanged;
19  shared::Signal<bool> activeChanged;
20  shared::Signal<bool> onChanged;
21  shared::Signal<double> givenTimestepChanged;
22  shared::Signal<double> maxTimestepChanged;
23  shared::Signal<uint32> dtCalcModeChanged;
24  shared::Signal<uint32> dtCalcIntChanged;
25  shared::Signal<double> dtIncrementChanged;
26  shared::Signal<double> safetyFactorChanged;
27  shared::Signal<bool> energyOnChanged;
28  shared::Signal<> energyMapChanged;
29  shared::Signal<uint32> substepChanged;
30 
32  virtual IString getName() const=0;
34  virtual QString getKeyword() const=0;
35  virtual bool getEnergyOn() const=0;
36  virtual IEnergyMap *getEnergies() const=0;
37  virtual bool getConfigured() const=0;
38  virtual bool getFollower() const=0;
39  virtual bool getActive() const=0;
40  virtual bool getOn() const=0;
41  virtual double getMaxTimestep() const=0;
42  virtual double getGivenTimestep() const=0;
43  virtual uint32 getDTCalcMode() const=0;
44  virtual uint32 getDTCalcInt() const=0;
45  virtual double getDTIncrement() const=0;
46  virtual DVect2 getTimestepLimits() const=0;
48  virtual double getSafetyFactor() const=0;
49  virtual uint32 getSubstep() const=0;
50 
51  // SLOTS
52  virtual void setFollower(bool b)=0;
53  virtual void setActive(bool b)=0;
54  virtual void setOn(bool b)=0;
55  virtual void setGivenTimestep(const double &d)=0;
56  virtual void setMaxTimestep(const double &d)=0;
57  virtual void setDTCalcMode(uint32)=0;
58  virtual void setDTCalcInt(uint32)=0;
59  virtual void setSafetyFactor(const double &d)=0;
60  virtual void setEnergyOn(bool b)=0;
61  virtual void setSubstep(uint32)=0;
62  };
63 } // namespace itascaxd
64 // EoF
Definition: istring.h:14
Interface to EnergyMap class.
Definition: ienergymap.h:15
Definition: iprocess.h:14
virtual QString getKeyword() const =0
Return process keyword used for commands and output.
virtual double getSafetyFactor() const =0
Returns the safety factor, by which the computed stable timestep is multiplied.
virtual IString getName() const =0
Return process name used for save/restore.
Interface to the main command processing class.
namespace Itasca
Definition: basememory.cpp:10
Itasca Library standard namespace, specific to 2D or 3D.
Definition: icontactmodule.h:4