Itasca C++ Interface
Loading...
Searching...
No Matches
imodulefwallthermal.h
1#pragma once
2// imodulefwallthermal.h
3// For CLUMPTHERMAL 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 IFWallThermal;
22 class IFWallFacetThermal;
23
25 public:
26 using prop_signal = shared::Signal<const QString &,const QVariant &>;
27
28 virtual TType getFWallThermalType() const=0;
29 virtual uint getFWallThermalPropertyNotice() const=0;
30 virtual uint getFWallThermalCycleNotice() const=0;
31 virtual uint getFWallThermalExtraNotice() const=0;
32 virtual uint getFWallThermalGroupNotice() const=0;
33 virtual uint getFWallThermalCleanNotice() const=0;
34 virtual const IContainer * getIContainerFWallThermal() const=0;
35 virtual IContainer * getIContainerFWallThermal()=0;
36 virtual const IContainer * getIContainerFWallFacetThermal() const=0;
37 virtual IContainer * getIContainerFWallFacetThermal()=0;
38 virtual const IFWallThermal * findFWallThermalWithID(quint64 id) const=0;
39 virtual IFWallThermal * findFWallThermalWithID(quint64 id) =0;
40 virtual const IFWallThermal * findFWallThermalClosestTo(const DVect &v,const double &radius=limits<double>::max()) const=0;
41 virtual IFWallThermal * findFWallThermalClosestTo(const DVect &v,const double &radius=limits<double>::max())=0;
42 virtual void validate()=0;
43 virtual TType getFWallFacetThermalType() const=0;
44 virtual const IFWallFacetThermal * findFWallFacetThermalWithID(quint64 id) const = 0;
45 virtual IFWallFacetThermal * findFWallFacetThermalWithID(quint64 id) = 0;
46 virtual const IFWallFacetThermal * findFWallFacetThermalClosestTo(const DVect &v,const double &radius=limits<double>::max()) const = 0;
47 virtual IFWallFacetThermal * findFWallFacetThermalClosestTo(const DVect &v,const double &radius=limits<double>::max()) = 0;
48
49 // Populates sets of property names based on their type including the relevant notices
50 virtual void populateAttributeSets(QStringList *scalarAtts,FArray<uint> *scalarNotices,QStringList *stringAtts,FArray<uint> *stringNotices,QStringList *vectorAtts,FArray<uint> *vectorNotices)const=0;
52 virtual void populatePieceAttributeSets(QStringList *valueAtts,QStringList *labelAtts,QStringList *vectorAtts)const=0;
53 // Populates sets of property names based on their type
54 virtual void populatePropertySets(QStringList *scalarProps,QStringList *stringProps,QStringList *vectorProps)const=0;
55
57 virtual prop_signal * getPropertySignal() const = 0;
58
59 };
60} // namespace pfcthermal
61// EoF
An array class that attempts to minimize unnecessary heap access.
Definition farray.h:25
Interface for containers of IThings.
Definition icontainer.h:21
debug checked shorthand for std::numeric_limits<T>::
Definition limit.h:25
Definition ifwallfacetthermal.h:21
Definition ifwallthermal.h:26
Definition imodulefwallthermal.h:24
virtual void populatePieceAttributeSets(QStringList *valueAtts, QStringList *labelAtts, QStringList *vectorAtts) const =0
Populates sets of piece property names based on their type.
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