Itasca C++ Interface
Loading...
Searching...
No Matches
ifragmentmodule.h
1#pragma once
2// ifragmentmodule.h
3#include "base/src/basedef.h"
4#include "base/src/farray.h"
5
6namespace itasca {
7 class IContainer;
8}
9
10namespace itascaxd {
11 class IContact;
12 class IFragment;
13 class IBody;
14 class Range;
15 using namespace itasca;
16
18 public:
19 virtual int getNbFragments(double ) const =0;
20 virtual void setIgnoreBond(bool) = 0;
21 virtual bool getIgnoreBond() = 0;
22 virtual void assignContact(IContact *) = 0;
23 virtual void removeContact(IContact * co) = 0;
24 virtual void registerBodyContainer(itasca::IContainer*) = 0;
25 virtual void registerContactContainer(TType, itasca::IContainer* , Range& r,bool fast=false) = 0;
26 virtual int getFragmentIndex(IBody*, double ) = 0;
27 virtual const IContainer* getIContainerFragment() const = 0;
28 virtual IContainer* getIContainerFragment() = 0;
29 virtual void getFragmentAtState( double state, FArray<IFragment *>* list ) = 0 ;
30 virtual bool checkAddContact( IContact * co ) = 0 ;
31 virtual QMap<double,quint64> getHistory( IBody* bd ) = 0 ;
32 virtual DVect getFragmentPosition( IFragment * cl, double state ) = 0;
33 virtual uint getFragmentNbelem( IFragment * cl, double state ) = 0;
34 virtual double getFragmentVolume( IFragment * cl, double state ) = 0;
35 virtual QVector<const IBody*> verticesOfFragment( IFragment * cl ) = 0;
36 virtual QVector<const IBody*> constructListVertices( IFragment * cl, double state ) = 0;
37 virtual QVector<double> getActiveStates() = 0;
38 virtual QVector<QPair<quint64,double> > getFragmentTimes() const = 0;
39 virtual double fragmentTimeFromNumber(int i) const = 0;
40 virtual int fragmentCycleFromNumber(int i) const = 0;
41 virtual int fragmentNumberFromTime(const double &d,bool closest=false) const = 0;
42
43 };
44
45} // namespace itascaxd
46// EoF
Base type definitions for the engine.
An array class that attempts to minimize unnecessary heap access.
Definition farray.h:25
Interface for containers of IThings.
Definition icontainer.h:21
Definition ibody.h:20
Contact class.
Definition icontact.h:33
Definition ifragment.h:14
Definition ifragmentmodule.h:17
An array class that attempts to minimize unnecessary heap access.
uint32 TType
class type indicator
Definition basedef.h:46
DVect3 DVect
Vector of doubles, either 2D or 3D.
Definition dim.h:154
namespace Itasca
Definition basememory.cpp:14
Itasca Library standard namespace, specific to 2D or 3D.
Definition icontactmodule.h:4