Itasca C++ Interface
Loading...
Searching...
No Matches
iglobals.h
Go to the documentation of this file.
1#pragma once
7#include "dim.h"
8
9#include "shared/interface/signal.h"
10
11namespace itascaxd {
12 class IContainerContact;
13 class IContact;
14
16
20 class IGlobals {
21 public:
22 shared::Signal<double> timestepChanged;
23 shared::Signal<uint64> totalCyclesChanged;
24 shared::Signal<uint64> superCyclesChanged;
25 shared::Signal<DVect> gravityChanged;
26 shared::Signal<uint32> threadsChanged;
27 shared::Signal<bool> orientTrackingChanged;
28 shared::Signal<bool> determinismChanged;
29 shared::Signal<bool> configuredForPluginsChanged;
30 shared::Signal<double> factorOfSafetyTolChanged;
31 shared::Signal<double> factorOfSafetyChanged;
32 shared::Signal<bool> deterministicDefaultChanged;
33 shared::Signal<bool> compressFilesChanged;
34 shared::Signal<bool> savePluginsChanged;
35 shared::Signal<bool> showInBrowserChanged;
36 shared::Signal<uint32> precisionChanged;
37 shared::Signal<uint32> precisionDefaultChanged;
38 shared::Signal<bool> detectionStateChanged;
39 shared::Signal<bool> largeStrainChanged;
40 shared::Signal<bool> useDeterminismChanged;
41 shared::Signal<bool> configuredForSecureInputChanged;
42 shared::Signal<bool> internalUseOnlyChanged;
43 shared::Signal<bool> clusterChanged;
44 shared::Signal<> updateIndicated; // Signal sent when some module thinks a "large strain update" or "geometry update" needs
45 // to happen. Receivers who use such a system should set a flag to indicate that
46 // these need to be recalculated at the start of the next cycle.
48 virtual double getTimestep() const=0;
50 virtual uint64 getTotalCycles() const=0;
52 virtual DVect getGravity() const=0;
54 virtual uint32 getThreads() const=0;
56 virtual bool getOrientTracking() const=0;
58 virtual bool getDeterministic() const=0;
59
60 virtual double getFactorOfSafetyTol() const=0;
62 virtual double getFactorOfSafety() const=0;
64 virtual bool getDeterministicDefault() const=0;
66 virtual bool getCompressFiles() const=0;
68 virtual bool getSavePlugins() const=0;
70 virtual bool getShowInBrowser() const=0;
72 virtual uint32 getPrecisionDefault() const = 0;
74 virtual uint32 getPrecision() const = 0;
76 virtual uint32 getDimension() const = 0;
78 virtual bool getDetectionState() const = 0;
79 // Get the large strain state
80 virtual bool getLargeStrain() const=0;
81 virtual bool getUseDeterminism() const=0;
82
83 // SLOTS
85 virtual void setGravity(const DVect &v)=0;
87 virtual void setThreads(uint32 i)=0;
89 virtual void setOrientTracking(bool b)=0;
91 virtual void setDeterministic(bool b)=0;
93 virtual void setDeterministicDefault(bool b)=0;
95 virtual void setCompressFiles(bool b)=0;
97 virtual void setSavePlugins(bool b)=0;
99 virtual void setShowInBrowser(bool b)=0;
101 virtual void setPrecisionDefault(int i)=0;
103 virtual void setPrecision(int i)=0;
105 virtual void setDetectionState(bool)= 0;
106 // Set the large strain state
107 virtual void setLargeStrain(bool)=0;
108
109 };
110} // namespace itascaxd
111// EOF
Interface to modele global settings.
Definition iglobals.h:20
virtual uint32 getThreads() const =0
Returns the target number of threads to be used by default in multithreaded computations.
virtual bool getDeterministic() const =0
Returns the boolean indicating whether or not deterministic mode is enabled.
virtual void setOrientTracking(bool b)=0
Sets the orientation tracking state.
virtual uint64 getTotalCycles() const =0
Returns the total number of cycles.
virtual uint32 getPrecisionDefault() const =0
Get the precision for printing.
virtual bool getCompressFiles() const =0
Whether new save files should be compressed.
virtual void setCompressFiles(bool b)=0
Sets whether new save files get compressed.
virtual void setDetectionState(bool)=0
Set the contact detection state.
virtual double getTimestep() const =0
Returns the timestep.
virtual bool getDetectionState() const =0
Get the contact detection state.
virtual bool getShowInBrowser() const =0
Whether help is shown in defaul browser.
virtual bool getOrientTracking() const =0
Returns the boolean indicating whether or not orientation tracking is enabled.
virtual void setGravity(const DVect &v)=0
Sets the gravitational-acceleration vector.
virtual void setThreads(uint32 i)=0
Sets the target number of processors to be used by default in multithreaded computations.
virtual DVect getGravity() const =0
Returns the gravitational-acceleration vector.
virtual void setShowInBrowser(bool b)=0
Sets whether help is shown in browser.
virtual bool getSavePlugins() const =0
Whether plugins are saved with the project.
virtual bool getDeterministicDefault() const =0
Whether determinism defaults to on or off on model reset.
virtual void setSavePlugins(bool b)=0
Sets whether saving plugins with the project is on or off.
virtual double getFactorOfSafety() const =0
Last calculated mechanical factor-of-safety.
virtual void setDeterministic(bool b)=0
Sets the deterministic mode state.
virtual uint32 getPrecision() const =0
Get the precision for printing.
virtual uint32 getDimension() const =0
Get the dimensionality of the code.
virtual void setPrecision(int i)=0
Set the precision for printing.
virtual void setPrecisionDefault(int i)=0
Set the default precision for printing.
virtual void setDeterministicDefault(bool b)=0
Sets whether determinism os on or off on model reset.
DIM - Provides code portability between 2D and 3D codes.
DVect3 DVect
Vector of doubles, either 2D or 3D.
Definition dim.h:154
Itasca Library standard namespace, specific to 2D or 3D.
Definition icontactmodule.h:4