SurgSim::Physics::DcdCollision Class Reference

Computation to determine the contacts between a list of CollisionPairs. More...

`#include <SurgSim/Physics/DcdCollision.h>`

Inheritance diagram for SurgSim::Physics::DcdCollision:

## Public Member Functions

| DcdCollision (bool doCopyState=false)
| Constructor. More...
| SURGSIM_CLASSNAME (SurgSim::Physics::DcdCollision)
virtual | ~DcdCollision ()
| Destructor. More...
Public Member Functions inherited from SurgSim::Physics::Computation
| Computation (bool doCopyState)
| Constructor. More...
virtual | ~Computation ()
| Destructor. More...
std::shared_ptr< PhysicsManagerState > | update (double dt, const std::shared_ptr< PhysicsManagerState > &state)
| Public Interface execute this objects computations, dt is the time from the last update call in seconds. More...
void | setDoCopyState (bool val)
| Sets up whether the computation will copy the state of PhysicsManagerState before executing. More...
bool | isCopyingState ()
| Query if this object is copying the PhysicsManagerState. More...
virtual std::string | getClassName () const =0
| The class name for this class. More...
Framework::Timer & | getTimer ()
| Provides access to the update timer. More...

## Protected Member Functions

std::shared_ptr< PhysicsManagerState > | doUpdate (const double &dt, const std::shared_ptr< PhysicsManagerState > &state) override
| Executes the update operation, overridden from Computation. More...

## Detailed Description

Computation to determine the contacts between a list of CollisionPairs.

This Computation class takes a list of representations, it will generate a list of collision pairs from this list on every frame, for each CollisionPair, it uses a two dimensional table of function objects (ContactCalculation) to determine how to calculate a contact between the two members of each pair, if no specific function exists a default function will be used. will update the collision pairs accordingly.

Note
  When a new ContactCalculation type gets implemented, the type needs to be registered with the table inside of ContactCalculation

## Constructor & Destructor Documentation

## DcdCollision()

SurgSim::Physics::DcdCollision::DcdCollision | ( | bool | doCopyState = `false` | ) |

explicit

Constructor.

Parameters

  doCopyState | Specify if the output state in Computation::Update() is a copy or not of the input state

## ~DcdCollision()

SurgSim::Physics::DcdCollision::~DcdCollision | ( |  | ) |

virtual

Destructor.

## Member Function Documentation

## doUpdate()

std::shared_ptr< PhysicsManagerState > SurgSim::Physics::DcdCollision::doUpdate | ( | const double & | dt,
|  | const std::shared_ptr< PhysicsManagerState > & | state
| ) |  |

override protected virtual

Executes the update operation, overridden from Computation.

Parameters

  dt | The time passed.
  state | The PhysicsManagerState from previous computation.

Implements SurgSim::Physics::Computation.

## SURGSIM_CLASSNAME()

SurgSim::Physics::DcdCollision::SURGSIM_CLASSNAME | ( | SurgSim::Physics::DcdCollision |  | ) |

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

- SurgSim/Physics/DcdCollision.h
- SurgSim/Physics/DcdCollision.cpp