Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

sheep::JointManager Class Reference

#include <joints.h>

List of all members.

Public Member Functions

 JointManager ()
void Insert (Joint *joint)
void Remove (Joint *joint)
void Setup ()
void ApplyContraints ()

Private Types

typedef std::list< Joint * > joint_list
typedef std::list< RigidBody * > rigidbody_list

Private Attributes

HTMLStreamdebug
joint_list m_joints
rigidbody_list m_bodies
Matrixm_invm
Matrixm_j
Vectorm_c
Vectorm_fext
Matrixm_a
Vectorm_b
Vectorm_lambda
Vectorm_f


Member Typedef Documentation

typedef std::list<Joint *> sheep::JointManager::joint_list [private]
 

Definition at line 133 of file joints.h.

typedef std::list<RigidBody *> sheep::JointManager::rigidbody_list [private]
 

Definition at line 134 of file joints.h.


Constructor & Destructor Documentation

JointManager::JointManager  ) 
 

Definition at line 318 of file joints.cpp.

References m_f, m_fext, m_invm, and m_lambda.


Member Function Documentation

void JointManager::ApplyContraints  ) 
 

Definition at line 385 of file joints.cpp.

References sheep::Joint::CorrectError(), sheep::RigidBody::GetMass(), sheep::RigidBody::GetWorldInertiaTensor(), sheep::RigidBody::IsFrozen(), sheep::itl_bicgstab(), m_f, m_invm, m_joints, m_lambda, sheep::Vector3::m_x, sheep::Vector3::m_y, sheep::Vector3::m_z, sheep::Real, and sheep::Matrix::Transpose().

Referenced by sheep::Subspace::Step().

void JointManager::Insert Joint joint  ) 
 

Definition at line 333 of file joints.cpp.

References sheep::Joint::GetBody(), sheep::Joint::GetBodyCount(), and m_joints.

void JointManager::Remove Joint joint  ) 
 

Definition at line 348 of file joints.cpp.

References m_joints.

void JointManager::Setup  ) 
 

Definition at line 356 of file joints.cpp.

References m_f, m_fext, m_invm, m_joints, and m_lambda.


Member Data Documentation

HTMLStream* sheep::JointManager::debug [private]
 

Definition at line 131 of file joints.h.

Matrix* sheep::JointManager::m_a [private]
 

Definition at line 145 of file joints.h.

Vector* sheep::JointManager::m_b [private]
 

Definition at line 146 of file joints.h.

rigidbody_list sheep::JointManager::m_bodies [private]
 

Definition at line 138 of file joints.h.

Vector* sheep::JointManager::m_c [private]
 

Definition at line 142 of file joints.h.

Vector* sheep::JointManager::m_f [private]
 

Definition at line 148 of file joints.h.

Referenced by ApplyContraints(), JointManager(), and Setup().

Vector* sheep::JointManager::m_fext [private]
 

Definition at line 143 of file joints.h.

Referenced by JointManager(), and Setup().

Matrix* sheep::JointManager::m_invm [private]
 

Definition at line 140 of file joints.h.

Referenced by ApplyContraints(), JointManager(), and Setup().

Matrix* sheep::JointManager::m_j [private]
 

Definition at line 141 of file joints.h.

joint_list sheep::JointManager::m_joints [private]
 

Definition at line 136 of file joints.h.

Referenced by ApplyContraints(), Insert(), Remove(), and Setup().

Vector* sheep::JointManager::m_lambda [private]
 

Definition at line 147 of file joints.h.

Referenced by ApplyContraints(), JointManager(), and Setup().


The documentation for this class was generated from the following files:
Generated on Tue May 11 01:31:56 2004 for toxic by doxygen 1.3.6