Itasca C++ Interface
Loading...
Searching...
No Matches
Public Member Functions | Static Public Attributes | List of all members
itascaxd::IContainerContact Class Referenceabstract

Contact container class. More...

#include <icontainercontact.h>

Public Member Functions

virtual IContainergetIContainer ()=0
 returns a pointer to the IContainer class representing a list of contacts.
 
virtual const IContainergetIContainer () const =0
 
virtual IContainergetContainerAllContact ()=0
 returns a pointer to the IContainer class representing a list of all contacts.
 
virtual const IContainergetContainerAllContact () const =0
 
virtual IContainerActiveContactgetContainerActiveContact ()=0
 returns a pointer to the IContainer class representing a list of active contacts.
 
virtual const IContainerActiveContactgetContainerActiveContact () const =0
 
virtual IContainergetEnd1Container ()=0
 returns a pointer to the Piece containers representing each end of the contact
 
virtual IContainergetEnd2Container ()=0
 
virtual MonitorBase * getMonitorBase ()=0
 
virtual TType getType () const =0
 Returns the TType of the contact.
 
virtual IString getName () const =0
 Returns the container name.
 
virtual QString getContactClassName () const =0
 Returns the contact class name.
 
virtual IString getTypeName () const =0
 Returns the contact type name.
 
virtual TType getContactType () const =0
 Returns the TType of the contact.
 
virtual double getMinDistance () const =0
 Returns the minimum distance.
 
virtual bool isMechanical () const =0
 Returns true if the contact is mechanical.
 
virtual bool isThermal () const =0
 Returns true if the contact is thermal.
 
virtual void registerContactModel (const QString &cmodel)=0
 
virtual bool amInterestedIn (const QString &cmodel) const =0
 Returns true if the contact model can be assigned to this type of contact.
 
virtual void clean (bool addStiffness)=0
 Updates the state of all contacts in the container.
 
virtual void setClassData (ContactClassDataBase *)=0
 Set the contact class data pointer.
 
virtual ContactClassDataBase * getClassData ()=0
 Get the contact class data pointer.
 
virtual double getEnergy (const QString &name) const =0
 Get the contact container energy contribution.
 
virtual const IContactfindContactWithEndIds (uint64 id1, uint64 id2) const =0
 
virtual const IContactfindContactNearest (DVect center) const =0
 
virtual void setInhibit (IThing *t, bool b)=0
 
virtual IContainergetInhibitedContacts ()=0
 Return the inhibited contacts.
 
virtual const IContainergetInhibitedContacts () const =0
 
virtual bool getOverlapRequired () const =0
 Get/set the overlap required flag to change the detection state.
 
virtual void setOverlapRequired (bool b)=0
 
virtual uint64 createBlocks ()=0
 Interface access to the Multicontainer createBlock function.
 
virtual uint64 getBlocks ()=0
 Interface access to the Multicontainer getNumberOfBlocks function.
 
virtual void threadedCallbackObject (Callback4< void, IContact *, uint32, uint32, void * > &callback, void *v=nullptr, bool useThreads=true)=0
 Object for creation of multithreaded loop over bodies.
 
template<class S , void(S::*)(IContact *, uint32, uint32, void *) MFP>
void threadedCallbackMethod (S *s, void *v=nullptr, bool useThreads=true)
 Implementation of the multithreaded loop using the threadedCallbackObject

 

Static Public Attributes

static const TType type_ = 0x04c815ba7
 The type identification number for this class, for use in convert_cast() and convert_getcast().
 

Detailed Description

Contact container class.

Contact container class.

Member Function Documentation

◆ findContactWithEndIds()

virtual const IContact * itascaxd::IContainerContact::findContactWithEndIds ( uint64 id1,
uint64 id2 ) const
pure virtual

Get the contact between ends with id1 and id2 - The order matters if the end pieces have different types.

◆ registerContactModel()

virtual void itascaxd::IContainerContact::registerContactModel ( const QString & cmodel)
pure virtual

Register the contact model cmodel with this contact container. Effectively set the container to be interested in the contact model,

◆ setInhibit()

virtual void itascaxd::IContainerContact::setInhibit ( IThing * t,
bool b )
pure virtual

Specify that the contact is inhibited or not inhibited. This operation puts inhibited contacts on a separate list


The documentation for this class was generated from the following file: