Itasca C++ Interface
Loading...
Searching...
No Matches
Public Types | Public Member Functions | List of all members
pfc::IModuleBall Class Referenceabstract

Interface for the Ball module. This is the interface for the Ball module. More...

#include <imoduleball.h>

Public Types

using prop_signal = shared::Signal<const QString &,const QVariant &>
 Signal emitted when a property is created or modified.
 

Public Member Functions

virtual TType getBallType () const =0
 Ball TType for type casting.
 
virtual TType getGhostBallType () const =0
 Ghost Ball TType for type casting.
 
virtual uint32 getBallGeometryNotice () const =0
 Ball geometry notice unsigned integer.
 
virtual uint32 getBallPropertyNotice () const =0
 Ball property notice unsigned integer.
 
virtual uint32 getBallVelocityNotice () const =0
 Ball velocity notice unsigned integer.
 
virtual uint32 getBallCycleNotice () const =0
 Ball cycle notice unsigned integer.
 
virtual uint32 getBallFixNotice () const =0
 Ball fixity condition notice unsigned integer.
 
virtual uint32 getBallExtraNotice () const =0
 Ball extra notice unsigned integer.
 
virtual uint32 getBallGroupNotice () const =0
 Ball group notice unsigned integer.
 
virtual uint32 getBallCleanNotice () const =0
 Ball clean notice unsigned integer.
 
virtual uint32 getBallRotationNotice () const =0
 Ball rotation notice unsigned integer.
 
virtual const IContainergetIContainerBall () const =0
 Const access to the Ball container.
 
virtual IContainergetIContainerBall ()=0
 Access to the Ball container.
 
virtual const IContainergetIContainerGhostBall () const =0
 Const access to the GhostBall container.
 
virtual IContainergetIContainerGhostBall ()=0
 Access to the GhostBall container.
 
virtual const IContainerContactgetIContainerBallBallContact () const =0
 Const access to the BallBallContact container.
 
virtual IContainerContactgetIContainerBallBallContact ()=0
 Access to the BallBallContact container.
 
virtual const IContainerContactgetIContainerDomainBallContact () const =0
 Const access to the DomainBallContact container.
 
virtual IContainerContactgetIContainerDomainBallContact ()=0
 Access to the DomainBallContact container.
 
virtual const ICellSpacegetICellSpace () const =0
 Const access to the Ball cellspace.
 
virtual ICellSpacegetICellSpace ()=0
 Access to the Ball cellspace.
 
virtual const IBallfindBallWithID (uint64 id) const =0
 
virtual IBallfindBallWithID (uint64 id)=0
 
virtual const IGhostBallfindGhostBallWithID (uint64 id) const =0
 
virtual IGhostBallfindGhostBallWithID (uint64 id)=0
 
virtual const IBallfindBallClosestTo (const DVect &v, const double &radius=limits< double >::max()) const =0
 
virtual IBallfindBallClosestTo (const DVect &v, const double &radius=limits< double >::max())=0
 
virtual const IBallfindBallContaining (const DVect &v, QSet< uint64 > *skip=nullptr) const =0
 
virtual IBallfindBallContaining (const DVect &v, QSet< uint64 > *skip=nullptr)=0
 
virtual void validate ()=0
 Validate the Ball module.
 
virtual const IEnergyMapgetIBallEnergies () const =0
 Const access to the Ball energies.
 
virtual const IEnergyMapgetIContactBallBallEnergies () const =0
 Const access to the BallBallContact energies.
 
virtual void getBallInBoxList (const DExtent &d, FArray< IBall * > *ret, bool intersect=true)=0
 
virtual void getBallInBoxList (const DExtent &d, FArray< const IBall * > *ret, bool intersect=true)=0
 
virtual IBallcreateBall (double rad, DVect pos, uint64 id=0)=0
 
virtual void populateAttributeSets (QStringList *scalarAtts, FArray< uint32 > *scalarNotices, QStringList *stringAtts, FArray< uint32 > *stringNotices, QStringList *vectorAtts, FArray< uint32 > *vectorNotices) const =0
 
virtual void populatePropertySets (QStringList *scalarProps, QStringList *stringProps, QStringList *vectorProps) const =0
 
virtual prop_signalgetPropertySignal () const =0
 Return the signal associated with the addition of a new property.
 
virtual void threadedCallbackObject (Callback4< void, IBall *, uint32, uint32, void * > &callback, void *v=nullptr, bool useThreads=true) const =0
 Object for creation of multithreaded loop over balls.
 
template<class S , void(S::*)(IBall *, uint32, uint32, void *) MFP>
void threadedCallbackMethod (S *s, void *v=nullptr, bool useThreads=true) const
 Implementation of the multithreaded loop using the threadedCallbackObject

 

Detailed Description

Interface for the Ball module. This is the interface for the Ball module.

Member Function Documentation

◆ createBall()

virtual IBall * pfc::IModuleBall::createBall ( double rad,
DVect pos,
uint64 id = 0 )
pure virtual

Create a Ball with radius rad at position pos, and returns an IBall pointer to the created Ball. If id is specified, then this id must not be already used by an existing Ball. An exception is thrown if this method cannot complete.

Parameters
radRadius
posPosition
idOptional ID number

◆ findBallClosestTo() [1/2]

virtual const IBall * pfc::IModuleBall::findBallClosestTo ( const DVect & v,
const double & radius = limits< double >::max() ) const
pure virtual

Find the Ball closest to the location v (const access). If the optional radius is specified, the search is restricted to the sphere (circle in 2D) with center v and radius radius

Parameters
vPosition
radiusOptional radius

◆ findBallClosestTo() [2/2]

virtual IBall * pfc::IModuleBall::findBallClosestTo ( const DVect & v,
const double & radius = limits< double >::max() )
pure virtual

Find the Ball closest to the location v. If the optional radius is specified, the search is restricted to the sphere (circle in 2D) with center

Parameters
vand radius
radius
vPosition
radiusOptional radius

◆ findBallWithID() [1/2]

virtual const IBall * pfc::IModuleBall::findBallWithID ( uint64 id) const
pure virtual

Find a Ball given its id (const access)

Parameters
idBall ID number

◆ findBallWithID() [2/2]

virtual IBall * pfc::IModuleBall::findBallWithID ( uint64 id)
pure virtual

Find a Ball given its id

Parameters
idBall ID number

◆ findGhostBallWithID() [1/2]

virtual const IGhostBall * pfc::IModuleBall::findGhostBallWithID ( uint64 id) const
pure virtual

Find a GhostBall given its id (const access)

Parameters
idGhostBall ID number

◆ findGhostBallWithID() [2/2]

virtual IGhostBall * pfc::IModuleBall::findGhostBallWithID ( uint64 id)
pure virtual

Find a GhostBall given its id

Parameters
idGhostBall ID number

◆ getBallInBoxList() [1/2]

virtual void pfc::IModuleBall::getBallInBoxList ( const DExtent & d,
FArray< const IBall * > * ret,
bool intersect = true )
pure virtual

Fill the FArray ret with a list of IBall pointers to the balls falling in the DExtent d. If intersect is true (default), then both balls whose centroids fall inside the extent and balls whose extents intersect the extent are added to the FArray; otherwise only balls whose centroids fall inside the extent are considered.

Parameters
dDExtent
retPointer to a FArray of IBall pointers
intersectBoolean intersection flag

◆ getBallInBoxList() [2/2]

virtual void pfc::IModuleBall::getBallInBoxList ( const DExtent & d,
FArray< IBall * > * ret,
bool intersect = true )
pure virtual

Fill the FArray ret with a list of const IBall pointers to the balls falling in the DExtent d. If intersect is true (default), then both balls whose centroids fall inside the extent and balls whose extents intersect the extent are added to the FArray; otherwise only balls whose centroids fall inside the extent are considered.

Parameters
dDExtent
retPointer to a FArray of const IBall pointers
intersectBoolean intersection flag

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