All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Attributes | List of all members
SurgSim::Physics::PhysicsManagerState Class Reference

#include <SurgSim/Physics/PhysicsManagerState.h>

Collaboration diagram for SurgSim::Physics::PhysicsManagerState:
Collaboration graph
[legend]

Public Member Functions

 PhysicsManagerState ()
 Constructor. More...
 
 ~PhysicsManagerState ()
 Destructor. More...
 
void setRepresentations (const std::vector< std::shared_ptr< Representation >> &val)
 Sets the physics representations for the state, these are the basis for all the computations. More...
 
const std::vector
< std::shared_ptr
< Representation > > & 
getRepresentations ()
 Gets the physics representations. More...
 
void setActiveRepresentations (const std::vector< std::shared_ptr< Representation >> &activeRepresentations)
 Set the list of representations into the active representations list. More...
 
const std::vector
< std::shared_ptr
< Representation > > & 
getActiveRepresentations () const
 Gets the active physics representations. More...
 
void setCollisionRepresentations (const std::vector< std::shared_ptr< SurgSim::Collision::Representation >> &val)
 Sets the collision representations for the state. More...
 
const std::vector
< std::shared_ptr
< SurgSim::Collision::Representation > > & 
getCollisionRepresentations ()
 Gets the collision representations. More...
 
void setConstraintComponents (const std::vector< std::shared_ptr< ConstraintComponent >> &val)
 Sets the list of constraint components. More...
 
const std::vector
< std::shared_ptr
< ConstraintComponent > > & 
getConstraintComponents ()
 Gets the constraint components. More...
 
const std::unordered_map
< std::shared_ptr
< SurgSim::Collision::Representation >
, std::shared_ptr
< SurgSim::Physics::Representation > > & 
getCollisionToPhysicsMap () const
 
void setCollisionPairs (std::vector< std::shared_ptr< SurgSim::Collision::CollisionPair >> val)
 Sets collision pairs that should be considered, while this is not being verified the collision pairs should only be from the list of representations that are in this state. More...
 
const std::vector
< std::shared_ptr
< SurgSim::Collision::CollisionPair > > & 
getCollisionPairs ()
 Gets collision pairs. More...
 
void setExcludedCollisionPairs (const std::vector< std::shared_ptr< SurgSim::Collision::CollisionPair >> &val)
 Sets the exclusion pairs. More...
 
const std::vector
< std::shared_ptr
< SurgSim::Collision::CollisionPair > > & 
getExcludedCollisionPairs () const
 Gets the exclusion pairs. More...
 
void setConstraintGroup (ConstraintGroupType type, const std::vector< std::shared_ptr< Constraint >> &constraints)
 Sets the group of constraints to a given value, the grouping indicates what type of constraint we are dealing with. More...
 
const std::vector
< std::shared_ptr< Constraint > > & 
getConstraintGroup (int type) const
 Gets constraint group. More...
 
void setActiveConstraints (const std::vector< std::shared_ptr< Constraint >> &activeConstraints)
 Filter the map of constraints into the active constraints list. More...
 
const std::vector
< std::shared_ptr< Constraint > > & 
getActiveConstraints () const
 
MlcpPhysicsProblemgetMlcpProblem ()
 Gets the Mlcp problem. More...
 
const MlcpPhysicsProblemgetMlcpProblem () const
 Gets the Mlcp problem. More...
 
MlcpPhysicsSolutiongetMlcpSolution ()
 Gets the Mlcp solution. More...
 
const MlcpPhysicsSolutiongetMlcpSolution () const
 Gets the Mlcp solution. More...
 
const MlcpMapping
< Representation > & 
getRepresentationsMapping () const
 Gets the representations mapping. More...
 
void setRepresentationsMapping (const MlcpMapping< Representation > &representationsMapping)
 Set the representations mapping. More...
 
const MlcpMapping< Constraint > & getConstraintsMapping () const
 Gets the constraints mapping. More...
 
void setConstraintsMapping (const MlcpMapping< Constraint > &constraintsMapping)
 Set the constraints mapping. More...
 

Private Attributes

MlcpPhysicsProblem m_mlcpPhysicsProblem
 Mlcp problem for this Physics Manager State. More...
 
MlcpPhysicsSolution m_mlcpPhysicsSolution
 Mlcp solution for this Physics Manager State. More...
 
std::vector< std::shared_ptr
< Representation > > 
m_representations
 
std::vector< std::shared_ptr
< Representation > > 
m_activeRepresentations
 The list of active representations. More...
 
std::vector< std::shared_ptr
< SurgSim::Collision::Representation > > 
m_collisionRepresentations
 List of all the collision representations know to the state. More...
 
std::vector< std::shared_ptr
< ConstraintComponent > > 
m_constraintComponents
 List of the constraint components. More...
 
std::unordered_map
< std::shared_ptr
< SurgSim::Collision::Representation >
, std::shared_ptr
< SurgSim::Physics::Representation > > 
m_collisionsToPhysicsMap
 Mapping of collision representations to their respective physics representation. More...
 
std::vector< std::shared_ptr
< SurgSim::Collision::CollisionPair > > 
m_collisionPairs
 The local list of collision pairs. More...
 
std::vector< std::shared_ptr
< SurgSim::Collision::CollisionPair > > 
m_excludedCollisionPairs
 List of collision pairs to be excluded. More...
 
std::unordered_map< int,
std::vector< std::shared_ptr
< Constraint > > > 
m_constraints
 The local map of constraints. More...
 
std::vector< std::shared_ptr
< Constraint > > 
m_activeConstraints
 The list of active constraints. More...
 
MlcpMapping< Representationm_representationsIndexMapping
 Representation mapping. More...
 
MlcpMapping< Constraintm_constraintsIndexMapping
 Constraints mapping. More...
 

Constructor & Destructor Documentation

SurgSim::Physics::PhysicsManagerState::PhysicsManagerState ( )

Constructor.

SurgSim::Physics::PhysicsManagerState::~PhysicsManagerState ( )

Destructor.

Member Function Documentation

const std::vector< std::shared_ptr< Constraint > > & SurgSim::Physics::PhysicsManagerState::getActiveConstraints ( ) const
Returns
The list of all active constraints.
const std::vector< std::shared_ptr< Representation > > & SurgSim::Physics::PhysicsManagerState::getActiveRepresentations ( ) const

Gets the active physics representations.

Returns
The active physics representations that are known to the state.
const std::vector< std::shared_ptr< SurgSim::Collision::CollisionPair > > & SurgSim::Physics::PhysicsManagerState::getCollisionPairs ( )

Gets collision pairs.

Returns
The collision pairs.
const std::vector< std::shared_ptr< SurgSim::Collision::Representation > > & SurgSim::Physics::PhysicsManagerState::getCollisionRepresentations ( )

Gets the collision representations.

Returns
The collision representations that are known to the state.
const std::unordered_map< std::shared_ptr< SurgSim::Collision::Representation >, std::shared_ptr< SurgSim::Physics::Representation > > & SurgSim::Physics::PhysicsManagerState::getCollisionToPhysicsMap ( ) const
Returns
A map that associates collision representations with physics representations where map[physicsRep->getCollisionRepresentation] = physicsRep
const std::vector< std::shared_ptr< ConstraintComponent > > & SurgSim::Physics::PhysicsManagerState::getConstraintComponents ( )

Gets the constraint components.

Returns
The constraint components known to the state
const std::vector< std::shared_ptr< Constraint > > & SurgSim::Physics::PhysicsManagerState::getConstraintGroup ( int  type) const

Gets constraint group.

Parameters
typeThe type.
Returns
The constraint group.
const MlcpMapping< Constraint > & SurgSim::Physics::PhysicsManagerState::getConstraintsMapping ( ) const

Gets the constraints mapping.

Returns
The constraints mapping (mapping between the constraints and the mlcp) Each constraint has an index in the mlcp. This mapping is about this index.
const std::vector< std::shared_ptr< SurgSim::Collision::CollisionPair > > & SurgSim::Physics::PhysicsManagerState::getExcludedCollisionPairs ( ) const

Gets the exclusion pairs.

Returns
The stored exclusion pairs
MlcpPhysicsProblem & SurgSim::Physics::PhysicsManagerState::getMlcpProblem ( )

Gets the Mlcp problem.

Returns
The Mlcp problem for this physics manager state (read/write access).
const MlcpPhysicsProblem & SurgSim::Physics::PhysicsManagerState::getMlcpProblem ( ) const

Gets the Mlcp problem.

Returns
The Mlcp problem for this physics manager state (const).
MlcpPhysicsSolution & SurgSim::Physics::PhysicsManagerState::getMlcpSolution ( )

Gets the Mlcp solution.

Returns
The Mlcp solution for this physics manager state (read/write access).
const MlcpPhysicsSolution & SurgSim::Physics::PhysicsManagerState::getMlcpSolution ( ) const

Gets the Mlcp solution.

Returns
The Mlcp solution for this physics manager state (const).
const std::vector< std::shared_ptr< Representation > > & SurgSim::Physics::PhysicsManagerState::getRepresentations ( )

Gets the physics representations.

Returns
The physics representations that are known to the state.
const MlcpMapping< Representation > & SurgSim::Physics::PhysicsManagerState::getRepresentationsMapping ( ) const

Gets the representations mapping.

Returns
The representations mapping (mapping between the representation and the mlcp) Each representation has an index in the mlcp. This mapping is about this index.
void SurgSim::Physics::PhysicsManagerState::setActiveConstraints ( const std::vector< std::shared_ptr< Constraint >> &  activeConstraints)

Filter the map of constraints into the active constraints list.

Parameters
activeConstraintsThe list of active constraints.
void SurgSim::Physics::PhysicsManagerState::setActiveRepresentations ( const std::vector< std::shared_ptr< Representation >> &  activeRepresentations)

Set the list of representations into the active representations list.

Parameters
activeRepresentationsThe active physics representations that are known to the state.
void SurgSim::Physics::PhysicsManagerState::setCollisionPairs ( std::vector< std::shared_ptr< SurgSim::Collision::CollisionPair >>  val)

Sets collision pairs that should be considered, while this is not being verified the collision pairs should only be from the list of representations that are in this state.

Parameters
valThe list of collision pairs.
void SurgSim::Physics::PhysicsManagerState::setCollisionRepresentations ( const std::vector< std::shared_ptr< SurgSim::Collision::Representation >> &  val)

Sets the collision representations for the state.

Parameters
valcollection of all collision representations.
void SurgSim::Physics::PhysicsManagerState::setConstraintComponents ( const std::vector< std::shared_ptr< ConstraintComponent >> &  val)

Sets the list of constraint components.

Parameters
valcollection of all constraint components
void SurgSim::Physics::PhysicsManagerState::setConstraintGroup ( ConstraintGroupType  type,
const std::vector< std::shared_ptr< Constraint >> &  constraints 
)

Sets the group of constraints to a given value, the grouping indicates what type of constraint we are dealing with.

Parameters
typeThe type of constraint grouping e.g. Contact Constraints.
constraintsThe constraints.
void SurgSim::Physics::PhysicsManagerState::setConstraintsMapping ( const MlcpMapping< Constraint > &  constraintsMapping)

Set the constraints mapping.

Parameters
constraintsMappingThe constraints mapping (mapping between the constraints and the mlcp)
void SurgSim::Physics::PhysicsManagerState::setExcludedCollisionPairs ( const std::vector< std::shared_ptr< SurgSim::Collision::CollisionPair >> &  val)

Sets the exclusion pairs.

Parameters
valThe list of collision pairs to be excluded from collision.
void SurgSim::Physics::PhysicsManagerState::setRepresentations ( const std::vector< std::shared_ptr< Representation >> &  val)

Sets the physics representations for the state, these are the basis for all the computations.

Parameters
valThe list of representations.
void SurgSim::Physics::PhysicsManagerState::setRepresentationsMapping ( const MlcpMapping< Representation > &  representationsMapping)

Set the representations mapping.

Parameters
representationsMappingThe representations mapping (mapping between the representation and the mlcp)

Member Data Documentation

std::vector<std::shared_ptr<Constraint> > SurgSim::Physics::PhysicsManagerState::m_activeConstraints
private

The list of active constraints.

std::vector<std::shared_ptr<Representation> > SurgSim::Physics::PhysicsManagerState::m_activeRepresentations
private

The list of active representations.

std::vector<std::shared_ptr<SurgSim::Collision::CollisionPair> > SurgSim::Physics::PhysicsManagerState::m_collisionPairs
private

The local list of collision pairs.

std::vector<std::shared_ptr<SurgSim::Collision::Representation> > SurgSim::Physics::PhysicsManagerState::m_collisionRepresentations
private

List of all the collision representations know to the state.

std::unordered_map<std::shared_ptr<SurgSim::Collision::Representation>, std::shared_ptr<SurgSim::Physics::Representation> > SurgSim::Physics::PhysicsManagerState::m_collisionsToPhysicsMap
private

Mapping of collision representations to their respective physics representation.

std::vector<std::shared_ptr<ConstraintComponent> > SurgSim::Physics::PhysicsManagerState::m_constraintComponents
private

List of the constraint components.

std::unordered_map<int, std::vector<std::shared_ptr<Constraint> > > SurgSim::Physics::PhysicsManagerState::m_constraints
private

The local map of constraints.

MlcpMapping<Constraint> SurgSim::Physics::PhysicsManagerState::m_constraintsIndexMapping
private

Constraints mapping.

std::vector<std::shared_ptr<SurgSim::Collision::CollisionPair> > SurgSim::Physics::PhysicsManagerState::m_excludedCollisionPairs
private

List of collision pairs to be excluded.

MlcpPhysicsProblem SurgSim::Physics::PhysicsManagerState::m_mlcpPhysicsProblem
private

Mlcp problem for this Physics Manager State.

MlcpPhysicsSolution SurgSim::Physics::PhysicsManagerState::m_mlcpPhysicsSolution
private

Mlcp solution for this Physics Manager State.

std::vector<std::shared_ptr<Representation> > SurgSim::Physics::PhysicsManagerState::m_representations
private

Local state data structures, please note that the physics state may get copied, these data structures should copy their contents on copy. With the caveat that objects contained within those structures might not get copied themselves. The local list of representations

MlcpMapping<Representation> SurgSim::Physics::PhysicsManagerState::m_representationsIndexMapping
private

Representation mapping.


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