Itasca C++ Interface
Loading...
Searching...
No Matches
imoduleballfluid.h
1#pragma once
2// imoduleballfluid.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 ccfd {
18 using namespace itasca;
19 using namespace itascaxd;
20
21 class IBallFluid;
22
24 public:
25 using prop_signal = shared::Signal<const QString &,const QVariant &>;
26
27 virtual TType getBallFluidType() const=0;
28 virtual uint32 getBallFluidCycleNotice() const=0;
29 virtual uint32 getBallFluidExtraNotice() const=0;
30 virtual uint32 getBallFluidGroupNotice() const=0;
31 virtual uint32 getBallFluidCleanNotice() const=0;
32 virtual const IContainer * getIContainerBallFluid() const=0;
33 virtual IContainer * getIContainerBallFluid()=0;
34 virtual const IBallFluid * findBallFluidWithID(uint64 id) const=0;
35 virtual IBallFluid * findBallFluidWithID(uint64 id) =0;
36 virtual const IBallFluid * findBallFluidClosestTo(const DVect3 &v,const double &radius=limits<double>::max()) const=0;
37 virtual IBallFluid * findBallFluidClosestTo(const DVect3 &v,const double &radius=limits<double>::max())=0;
38 virtual void validate()=0;
39 //virtual const IEnergyMap * getIBallFluidEnergies() const=0;
40
41 // Populates sets of property names based on their type including the relevant notices
42 virtual void populateAttributeSets(QStringList *scalarAtts,FArray<uint32> *scalarNotices,QStringList *stringAtts,FArray<uint32> *stringNotices,QStringList *vectorAtts,FArray<uint32> *vectorNotices)const=0;
43 // Populates sets of property names based on their type
44 virtual void populatePropertySets(QStringList *scalarProps,QStringList *stringProps,QStringList *vectorProps)const=0;
45
46 };
47} // namespace ccfd
48// EoF
An array class that attempts to minimize unnecessary heap access.
Definition farray.h:25
Definition iballfluid.h:27
Definition imoduleballfluid.h:23
Interface for containers of IThings.
Definition icontainer.h:21
debug checked shorthand for std::numeric_limits<T>::
Definition limit.h:25
An array class that attempts to minimize unnecessary heap access.
uint32 TType
class type indicator
Definition basedef.h:46
ccfd namespace
Definition iballfluid.h:19
namespace Itasca
Definition basememory.cpp:14
Itasca Library standard namespace, specific to 2D or 3D.
Definition icontactmodule.h:4