Itasca C++ Interface
Loading...
Searching...
No Matches
imoduleballthermal.h
1#pragma once
2// imoduleballthermal.h
3// For BALLTHERMAL Module
4#include "shared/interface/signal.h"
5#include "base/src/farray.h"
6
7namespace itasca {
8 class IContainer;
9 class IEnergyMap;
10}
11
12namespace itascaxd {
13 class ICellSpace;
14 class IContainerContact;
15}
16
17namespace pfcthermal {
18 using namespace itasca;
19 using namespace itascaxd;
20
21 class IBallThermal;
22
24 public:
25 using prop_signal = shared::Signal<const QString &, const QVariant &>;
26
27 virtual TType getBallThermalType() const=0;
28 virtual uint getBallThermalPropertyNotice() const=0;
29 virtual uint getBallThermalCycleNotice() const=0;
30 virtual uint getBallThermalFixNotice() const=0;
31 virtual uint getBallThermalExtraNotice() const=0;
32 virtual uint getBallThermalGroupNotice() const=0;
33 virtual uint getBallThermalCleanNotice() const=0;
34 virtual const IContainer * getIContainerBallThermal() const=0;
35 virtual IContainer * getIContainerBallThermal()=0;
36 virtual const IContainerContact *getIContainerBallBallContactThermal() const=0;
37 virtual IContainerContact * getIContainerBallBallContactThermal()=0;
38 virtual const IBallThermal * findBallThermalWithID(quint64 id) const=0;
39 virtual IBallThermal * findBallThermalWithID(quint64 id) =0;
40 virtual const IBallThermal * findBallThermalClosestTo(const DVect &v,const double &radius=limits<double>::max()) const=0;
41 virtual IBallThermal * findBallThermalClosestTo(const DVect &v,const double &radius=limits<double>::max())=0;
42 virtual void validate()=0;
43 virtual const IEnergyMap * getIBallThermalEnergies() const=0;
44 virtual const IEnergyMap * getIContactThermalBallBallEnergies() const=0;
45
46 // Populates sets of property names based on their type including the relevant notices
47 virtual void populateAttributeSets(QStringList *scalarAtts,FArray<uint> *scalarNotices,QStringList *stringAtts,FArray<uint> *stringNotices,QStringList *vectorAtts,FArray<uint> *vectorNotices)const=0;
48 // Populates sets of property names based on their type
49 virtual void populatePropertySets(QStringList *scalarProps,QStringList *stringProps,QStringList *vectorProps)const=0;
50
52 virtual prop_signal * getPropertySignal() const = 0;
53
54 };
55} // namespace pfcthermal
56// EoF
An array class that attempts to minimize unnecessary heap access.
Definition farray.h:25
Interface for containers of IThings.
Definition icontainer.h:21
Interface to EnergyMap class.
Definition ienergymap.h:15
Contact container class.
Definition icontainercontact.h:28
debug checked shorthand for std::numeric_limits<T>::
Definition limit.h:25
Definition iballthermal.h:24
Definition imoduleballthermal.h:23
virtual prop_signal * getPropertySignal() const =0
Return the signal associated with the addition of a new property.
An array class that attempts to minimize unnecessary heap access.
uint32 TType
class type indicator
Definition basedef.h:46
DVect3 DVect
Vector of doubles, either 2D or 3D.
Definition dim.h:154
namespace Itasca
Definition basememory.cpp:14
Itasca Library standard namespace, specific to 2D or 3D.
Definition icontactmodule.h:4