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<bool> plasticStrainChanged;
45 shared::Signal<> updateIndicated; // Signal sent when some module thinks a "large strain update" or "geometry update" needs
46 // to happen. Receivers who use such a system should set a flag to indicate that
47 // these need to be recalculated at the start of the next cycle.
49 virtual double getTimestep() const=0;
51 virtual uint64 getTotalCycles() const=0;
53 virtual DVect getGravity() const=0;
55 virtual uint32 getThreads() const=0;
57 virtual bool getOrientTracking() const=0;
59 virtual bool getDeterministic() const=0;
60
61 virtual double getFactorOfSafetyTol() const=0;
63 virtual double getFactorOfSafety() const=0;
65 virtual bool getDeterministicDefault() const=0;
67 virtual bool getCompressFiles() const=0;
69 virtual bool getSavePlugins() const=0;
71 virtual bool getShowInBrowser() const=0;
73 virtual uint32 getPrecisionDefault() const = 0;
75 virtual uint32 getPrecision() const = 0;
77 virtual uint32 getDimension() const = 0;
79 virtual bool getDetectionState() const = 0;
80 // Get the large strain state
81 virtual bool getLargeStrain() const=0;
82 virtual bool getUseDeterminism() const=0;
83
84 // SLOTS
86 virtual void setGravity(const DVect &v)=0;
88 virtual void setThreads(uint32 i)=0;
90 virtual void setOrientTracking(bool b)=0;
92 virtual void setDeterministic(bool b)=0;
94 virtual void setDeterministicDefault(bool b)=0;
96 virtual void setCompressFiles(bool b)=0;
98 virtual void setSavePlugins(bool b)=0;
100 virtual void setShowInBrowser(bool b)=0;
102 virtual void setPrecisionDefault(int i)=0;
104 virtual void setPrecision(int i)=0;
106 virtual void setDetectionState(bool)= 0;
107 // Set the large strain state
108 virtual void setLargeStrain(bool)=0;
109
110 };
111} // namespace itascaxd
112// 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