Itasca C++ Interface
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
iclumpccfd.h
1 #pragma once
2 // iclumpccfd.h
3 #include "base/src/farray.h"
4 
5 namespace itasca {
6  class IThing;
7  class IContainer;
8 }
9 
10 namespace itascaxd {
11  class IBody;
12  class IBodyFluid;
13  class IPiece;
14  class IContact;
15 }
16 
17 namespace pfc {
18  class IClump;
19 }
20 
21 namespace ccfd {
22  using namespace itasca;
23  using namespace itascaxd;
24 
25  using namespace pfc;
26  class IPebbleCCFD;
27  class ICcfdElement;
28  class IClumpCCFD {
29  public:
30  inline static const TType type_ = 0x52d00cb0;
31 
32  virtual IThing * getIThing()=0;
33  virtual const IThing * getIThing() const=0;
34  virtual IBody * getIBody()=0;
35  virtual const IBody * getIBody() const=0;
36  virtual IBodyFluid * getIBodyFluid()=0;
37  virtual const IBodyFluid * getIBodyFluid() const=0;
38  virtual IBody * getIBodyMechanical()=0;
39  virtual const IBody * getIBodyMechanical() const=0;
40  virtual IClump * getIClump()=0;
42  virtual IPebbleCCFD * getFirstPebble() = 0;
44  virtual const IPebbleCCFD * getFirstPebble() const = 0;
45  virtual const IClump * getIClump() const=0;
47  virtual uint getNumberPebbles() const=0;
49  virtual void getPebbleList(FArray<IPebbleCCFD *> *)=0;
51  virtual void getPebbleList(FArray<const IPebbleCCFD *> *) const=0;
52  virtual IContainer *getClumpCCFDAsPebbleContainer() = 0;
53  virtual const IContainer *getClumpCCFDAsPebbleContainer() const = 0;
54  virtual void getElements(FArray<ICcfdElement*> *) const=0;
55  virtual DVect getFluidForce() const=0;
56  virtual void setFluidForce(const DVect &d) =0;
57  };
58 
59 } // namespace ccfd
60 // EoF
61 
namespace Itasca
Definition: basememory.cpp:9
Base class for items that will be stored in containers.
Definition: ithing.h:31
Definition: iclumpccfd.h:28
ccfd namespace
Definition: iballfluid.h:19
PFC namespace.
Definition: iballfluid.h:15
Definition: ipebbleccfd.h:25
An array class that attempts to minimize unnecessary heap access.
unsigned int TType
class type indicator
Definition: basedef.h:41
Interface for a clump. This is the interface for a clump. A clump is a collection of pebbles that def...
Definition: iclump.h:37
Itasca Library standard namespace, specific to 2D or 3D.
Definition: icontactmodule.h:4
An array class that attempts to minimize unnecessary heap access.
Definition: farray.h:27
Interface for containers of IThings.
Definition: icontainer.h:23
DVect3 DVect
Vector of doubles, either 2D or 3D.
Definition: dim.h:145
Definition: ibodyfluid.h:9
Definition: ibody.h:20