Itasca C++ Interface
Loading...
Searching...
No Matches
ipiecemechanical.h
1#pragma once
2// ipiecemechanical.h
3
4// Interface for functionality common to all mechanical pieces.
5// They all define surface properties, used by mechanical surface contacts.
6// They also all need to define a velocity.
7
8namespace itascaxd {
9 class IPiece;
10
12 public:
14 inline static const TType type_ = 0x4c815b91;
15 virtual const IPiece * getIPiece() const=0;
16 virtual IPiece * getIPiece()=0;
17 virtual DVect getVelocity() const=0;
18 virtual DAVect getAngVelocity() const=0;
19 virtual DVect getPosition() const=0;
20 virtual DMatrix<dim,dim> getUnscaledStress(const DVect &) const=0;
21 virtual bool isBonded(const TType &type=0,const IPiece *p2=0) const = 0;
22 };
23} // namespace itascaxd
24
25// EoF
DMatrix is a Matrix that defaults to type double...
Definition matrix.h:758
Definition ipiece.h:15
Definition ipiecemechanical.h:11
static const TType type_
The type identification number for this class, for use in convert_cast() and convert_getcast().
Definition ipiecemechanical.h:14
uint32 TType
class type indicator
Definition basedef.h:46
DVect3 DVect
Vector of doubles, either 2D or 3D.
Definition dim.h:154
DAVect3 DAVect
Angular vector of doubles, either 2D or 3D.
Definition dim.h:162
Itasca Library standard namespace, specific to 2D or 3D.
Definition icontactmodule.h:4