Internal joint model type. More...
#include <playrho/d2/detail/JointModel.hpp>
Public Types | |
using | data_type = T |
Type alias for the type of the data held. | |
Public Member Functions | |
template<typename U , std::enable_if_t<!std::is_same_v< U, JointModel >, int > = 0> | |
JointModel (U &&arg) noexcept(std::is_nothrow_constructible_v< T, U >) | |
Initializing constructor. | |
std::unique_ptr< JointConcept > | Clone_ () const override |
Clones this concept and returns a pointer to a mutable copy. More... | |
BodyID | GetBodyA_ () const noexcept override |
Gets the ID of body-A. More... | |
BodyID | GetBodyB_ () const noexcept override |
Gets the ID of body-B. More... | |
bool | GetCollideConnected_ () const noexcept override |
Gets whether collision handling should be done for connected bodies. More... | |
const void * | GetData_ () const noexcept override |
Gets the data for the underlying configuration. More... | |
void * | GetData_ () noexcept override |
Gets the data for the underlying configuration. More... | |
TypeID | GetType_ () const noexcept override |
Gets the use type information. More... | |
void | InitVelocity_ (const Span< BodyConstraint > &bodies, const playrho::StepConf &step, const ConstraintSolverConf &conf) override |
Initializes the velocities for this joint. More... | |
bool | IsEqual_ (const JointConcept &other) const noexcept override |
Equality checking function. | |
bool | ShiftOrigin_ (const Length2 &value) noexcept override |
Call to notify joint of a shift in the world origin. More... | |
bool | SolvePosition_ (const Span< BodyConstraint > &bodies, const ConstraintSolverConf &conf) const override |
Solves the positions for this joint. More... | |
bool | SolveVelocity_ (const Span< BodyConstraint > &bodies, const playrho::StepConf &step) override |
Solves the velocities for this joint. More... | |
Public Member Functions inherited from playrho::d2::detail::JointConcept | |
virtual | ~JointConcept ()=default |
Explicitly declared virtual destructor. | |
Public Attributes | |
data_type | data |
Data. | |
Internal joint model type.
|
inlineoverridevirtual |
Clones this concept and returns a pointer to a mutable copy.
std::bad_alloc
or any exception that's thrown by the constructor for the model's underlying data type. std::bad_alloc | if there's a failure allocating storage. |
Implements playrho::d2::detail::JointConcept.
|
inlineoverridevirtualnoexcept |
Gets the ID of body-A.
Implements playrho::d2::detail::JointConcept.
|
inlineoverridevirtualnoexcept |
Gets the ID of body-B.
Implements playrho::d2::detail::JointConcept.
|
inlineoverridevirtualnoexcept |
Gets whether collision handling should be done for connected bodies.
Implements playrho::d2::detail::JointConcept.
|
inlineoverridevirtualnoexcept |
Gets the data for the underlying configuration.
Implements playrho::d2::detail::JointConcept.
|
inlineoverridevirtualnoexcept |
Gets the data for the underlying configuration.
Implements playrho::d2::detail::JointConcept.
|
inlineoverridevirtualnoexcept |
Gets the use type information.
Implements playrho::d2::detail::JointConcept.
Referenced by playrho::d2::detail::JointModel< T >::IsEqual_().
|
inlineoverridevirtual |
Initializes the velocities for this joint.
Implements playrho::d2::detail::JointConcept.
|
inlineoverridevirtualnoexcept |
Call to notify joint of a shift in the world origin.
Implements playrho::d2::detail::JointConcept.
|
inlineoverridevirtual |
Solves the positions for this joint.
Implements playrho::d2::detail::JointConcept.
|
inlineoverridevirtual |
Solves the velocities for this joint.
Implements playrho::d2::detail::JointConcept.