Itasca C++ Interface
imodulepfcfluid.h
1 #pragma once
2 // imodulepfcfluid.h
3 
4 #include "shared/interface/signal.h"
5 
6 namespace itasca {
7  class IContainer;
8  class IEnergyMap;
9 }
10 
11 namespace itascaxd {
12  class ICellSpace;
13  class IContainerContact;
14 }
15 
16 namespace pfcthermal {
17  using namespace itasca;
18  using namespace itascaxd;
19 
20  class IBallFluid;
21 
23  public:
24  using prop_signal = shared::Signal<const QString&, const QVariant&>;
25 
26  virtual const IContainer* getIContainerBallFluid() const = 0;
27  virtual IContainer* getIContainerBallFluid() = 0;
28  virtual const IContainerContact* getIContainerBallBallContactFluid() const = 0;
29  virtual IContainerContact* getIContainerBallBallContactFluid() = 0;
30  virtual TType getBallFluidType() const = 0;
31  virtual const IBallFluid* findBallFluidWithID(quint64 id) const = 0;
32  virtual IBallFluid* findBallFluidWithID(quint64 id) = 0;
33  virtual const IBallFluid* findBallFluidClosestTo( const DVect& v, const double& radius = limits<double>::max() ) const = 0;
34  virtual IBallFluid* findBallFluidClosestTo( const DVect& v, const double& radius = limits<double>::max() ) = 0;
35  virtual void validate() = 0;
36  virtual const IEnergyMap* getIBallFluidEnergies() const = 0;
37  virtual const IEnergyMap* getIContactFluidBallBallEnergies() const = 0;
38  };
39 }
Interface for containers of IThings.
Definition: icontainer.h:21
Interface to EnergyMap class.
Definition: ienergymap.h:15
Contact container class.
Definition: icontainercontact.h:29
debug checked shorthand for std::numeric_limits<T>::
Definition: limit.h:25
Definition: iballfluid.h:24
Definition: imodulepfcfluid.h:22
uint32 TType
class type indicator
Definition: basedef.h:46
DVect3 DVect
Vector of doubles, either 2D or 3D.
Definition: dim.h:150
namespace Itasca
Definition: basememory.cpp:10
Itasca Library standard namespace, specific to 2D or 3D.
Definition: icontactmodule.h:4