|
AGX Dynamics 2.41.2.0
|
The base class for interactions. More...
#include <Interaction.h>
Inheritance diagram for agx::Interaction:Public Member Functions | |
| Interaction () | |
| Default constructor. | |
| AGXSTREAM_DECLARE_SERIALIZABLE_BASE (agx::Interaction) | |
| const agx::Name & | getName () const |
| agx::PropertyContainer * | getPropertyContainer () |
| const agx::PropertyContainer * | getPropertyContainer () const |
| agxSDK::SimulationProxy * | getSimulationProxy () const |
| agx::Bool | hasPropertyContainer () const |
| virtual void | postSystemCallback (agx::DynamicsSystem *) |
| Called after all post step events, after solve. | |
| virtual void | preSystemCallback (agx::DynamicsSystem *) |
| Called after all pre step events, before solve. | |
| void | setName (const agx::Name &name) |
| Name this interaction. | |
| void | setPropertyContainer (agx::PropertyContainer *propertyContainer) |
| Assign a new property container. | |
| virtual void | updateForce (agx::DynamicsSystem *dynamicsSystem) |
| This virtual method is implemented so that it computes the interaction forces on all the physical bodies implicated. | |
Public Member Functions inherited from agx::Referenced | |
| Referenced () | |
| Default constructor. | |
| Referenced (const Referenced &) | |
| template<typename T > | |
| T * | as () |
| Subclass casting. | |
| template<typename T > | |
| const T * | as () const |
| template<typename T > | |
| T * | asSafe () |
| Safe subclass casting, return nullptr if template type does not match. | |
| template<typename T > | |
| const T * | asSafe () const |
| int | getReferenceCount () const |
| template<typename T > | |
| bool | is () const |
| Subclass test. | |
| Referenced & | operator= (const Referenced &) |
| Assignment operator. Will increment the number of references to the referenced object. | |
| void | reference (void *ptr=nullptr) const |
| Explicitly increment the reference count by one, indicating that this object has another pointer which is referencing it. | |
| void | unreference (void *ptr=nullptr) const |
| Decrement the reference count by one, indicating that a pointer to this object is referencing it. | |
| void | unreference_nodelete () const |
| Decrement the reference count by one, indicating that a pointer to this object is referencing it. | |
Public Member Functions inherited from agxStream::Serializable | |
| virtual | ~Serializable () |
| Destructor for normal C++ use but hidden from SWIG bindings. | |
| virtual const char * | getClassName () const |
| bool | getEnableSerialization () const |
| bool | getEnableUuidGeneration () |
| agx::UInt32 | getIndex () const |
| This index is given at creation of this object. | |
| virtual StorageAgent * | getStorageAgent () const =0 |
| agx::Uuid | getUuid () const |
| bool | isFinished () const |
| void | setEnableSerialization (bool flag) |
| Set to false to disable serialization of this object. | |
| void | setFinished () |
| Tells this class that it is restored correctly and should not be deleted during destruction of an Archive. | |
| void | setUuid (const agx::Uuid &uuid) |
| Explicitly set a Uuid on a serializable object. | |
Static Public Member Functions | |
| static agxStream::Serializable * | create (agxStream::InputArchive &) |
Static Public Member Functions inherited from agx::Referenced | |
| template<typename T > | |
| static bool | ValidateCast (const Referenced *object) |
Static Public Member Functions inherited from agxStream::Serializable | |
| static void | setEnableUuidGeneration (bool flag) |
| Specify if there should be UUID:s generated for each new Serializable object. By default it is enabled. | |
Protected Member Functions | |
| virtual | ~Interaction () |
| Reference counted object, protected destructor. | |
| virtual void | addNotification () |
| Called when added to a simulation. | |
| virtual void | removeNotification () |
| Called when removed from a simulation. | |
| virtual void | setSimulation (agxSDK::Simulation *simulation) |
| Assign simulation. | |
Protected Member Functions inherited from agx::Referenced | |
| virtual | ~Referenced () |
| Destructor. | |
| void | allocateObserverVector () const |
| void | deleteUsingDeleteHandler () const |
Protected Member Functions inherited from agxStream::Serializable | |
| Serializable () | |
| Default constructor. | |
| Serializable (const Serializable &other) | |
| Copy constructor. | |
| void | generateUuid () |
Additional Inherited Members | |
Static Protected Member Functions inherited from agx::Referenced | |
| static DeleteHandler * | getDeleteHandler () |
| static void | setDeleteHandler (DeleteHandler *handler) |
| Internal: Set a DeleteHandler to which deletion of all referenced counted objects will be delegated to. | |
Protected Attributes inherited from agx::Referenced | |
| Mutex | m_mutex |
| ObserverContainer | m_observers |
| AtomicValue | m_refCount |
The base class for interactions.
Definition at line 32 of file Interaction.h.
| agx::Interaction::Interaction | ( | ) |
Default constructor.
|
inlineprotectedvirtual |
Reference counted object, protected destructor.
Definition at line 106 of file Interaction.h.
|
protectedvirtual |
Called when added to a simulation.
Reimplemented in agx::IGenericConstraint, agx::Constraint, agx::StrongInteraction, and agxDriveTrain::VelocityConstraint.
| agx::Interaction::AGXSTREAM_DECLARE_SERIALIZABLE_BASE | ( | agx::Interaction | ) |
|
inlinestatic |
Definition at line 100 of file Interaction.h.
| const agx::Name & agx::Interaction::getName | ( | ) | const |
| agx::PropertyContainer * agx::Interaction::getPropertyContainer | ( | ) |
| const agx::PropertyContainer * agx::Interaction::getPropertyContainer | ( | ) | const |
| agxSDK::SimulationProxy * agx::Interaction::getSimulationProxy | ( | ) | const |
| agx::Bool agx::Interaction::hasPropertyContainer | ( | ) | const |
|
inlinevirtual |
Called after all post step events, after solve.
Reimplemented in agx::AddedMassInteractionHandler, agx::Constraint, and agx::StrongInteraction.
Definition at line 97 of file Interaction.h.
|
inlinevirtual |
Called after all pre step events, before solve.
Reimplemented in agx::AddedMassInteractionHandler, agx::Constraint, and agx::StrongInteraction.
Definition at line 93 of file Interaction.h.
|
protectedvirtual |
Called when removed from a simulation.
Reimplemented in agx::IGenericConstraint, agx::Constraint, and agx::StrongInteraction.
| void agx::Interaction::setName | ( | const agx::Name & | name | ) |
Name this interaction.
| name | - new name of this interaction |
| void agx::Interaction::setPropertyContainer | ( | agx::PropertyContainer * | propertyContainer | ) |
Assign a new property container.
| propertyContainer | - new property container |
|
protectedvirtual |
|
inlinevirtual |
This virtual method is implemented so that it computes the interaction forces on all the physical bodies implicated.
This method defaults to doing nothing. Constraints and other strong interactions might not implement anything for this because the forces they generate are computed by a solver. A weak interaction must implement this method to have any effect.
| dynamicsSystem | - the system to which the forces should be added |
Definition at line 130 of file Interaction.h.