Itasca C++ Interface
Toggle main menu visibility
Loading...
Searching...
No Matches
imoduleccfd.h
Go to the documentation of this file.
1
#pragma once
7
8
// imoduleccfd.h
9
// For CCFD Module
10
#include "
base/src/farray.h
"
11
#include "baseqt/src/baseqt.h"
12
13
namespace
itasca
{
14
class
IContainer
;
15
}
16
18
namespace
ccfd
{
19
using namespace
itasca;
20
class
ICcfdElement
;
23
25
class
IModuleCCFD
{
26
public
:
27
virtual
TType
getElementFluidType()
const
=0;
28
virtual
const
ICcfdElement
* findElementFluidWithID(uint64
id
)
const
=0;
29
virtual
ICcfdElement
* findElementFluidWithID(uint64
id
) =0;
30
31
virtual
int
getNumberOfElements()
const
=0;
32
virtual
int
getElementNode(
int
element,
int
node)
const
=0;
33
virtual
int
getElementFaces()
const
=0;
// number of faces in an element
34
virtual
int
getElementNodes()
const
=0;
35
virtual
const
ICcfdElement
* getICcfdElement(
int
i)
const
=0;
36
virtual
const
char
* getCcfdElementType()
const
=0;
37
virtual
int
getElementNodeGlobalAddress(
int
e,
int
n)
const
=0;
38
virtual
const
IContainer
*getIContainerElement()
const
= 0;
39
virtual
IContainer
* getIContainerElement() = 0;
40
virtual
uint32 getElementCyclingNotice()
const
= 0;
41
virtual
uint32 getElementGeometryNotice()
const
= 0;
42
virtual
uint32 getElementExtraNotice()
const
= 0;
43
virtual
uint32 getElementGroupNotice()
const
= 0;
44
virtual
uint32 getCCFDCleanNotice()
const
= 0;
45
virtual
void
createMesh(
const
QList<double> &nlist,
const
QList<qint64> &elist)=0;
46
47
// Populates sets of property names based on their type including the relevant notices
48
virtual
void
populateElementAttributeSets(
StringList
*scalarAtts,
FArray<uint32>
*scalarNotices,
StringList
*stringAtts,
FArray<uint32>
*stringNotices,
StringList
*vectorAtts,
FArray<uint32>
*vectorNotices)
const
=0;
49
50
//elements in a box
51
virtual
void
getElementsInBoxList(
const
DExtent
&d,
FArray<ICcfdElement *>
*ret,
bool
intersect=
true
)=0;
52
virtual
void
getElementsInBoxList(
const
DExtent
&d,
FArray<const ICcfdElement *>
*ret,
bool
intersect=
true
)=0;
53
virtual
const
ICcfdElement
* findElementClosestTo(
const
DVect
&v,
const
double
&radius=
limits<double>::max
())
const
=0;
54
virtual
ICcfdElement
* findElementClosestTo(
const
DVect
&v,
const
double
&radius=
limits<double>::max
())=0;
56
57
58
};
59
60
}
// namespace ccfd
61
// EoF
FArray
An array class that attempts to minimize unnecessary heap access.
Definition
farray.h:25
StringList
Definition
basestring.h:71
ccfd::ICcfdElement
Definition
iccfdelement.h:17
ccfd::IModuleCCFD
Interface for the PFC ccfd module.
Definition
imoduleccfd.h:25
itasca::IContainer
Interface for containers of IThings.
Definition
icontainer.h:21
limits
debug checked shorthand for std::numeric_limits<T>::
Definition
limit.h:25
farray.h
An array class that attempts to minimize unnecessary heap access.
TType
uint32 TType
class type indicator
Definition
basedef.h:47
DExtent
DExtent3 DExtent
A DExtent2 in 2D, a DExtent3 in 3D.
Definition
dim.h:162
DVect
DVect3 DVect
Vector of doubles, either 2D or 3D.
Definition
dim.h:156
ccfd
ccfd namespace
Definition
iballfluid.h:19
itasca
namespace Itasca
Definition
basememory.cpp:14
pfc
ccfd
interface
imoduleccfd.h
Generated by
1.18.0