Ignition Physics

API Reference

5.1.0
AttachPrismaticJointFeature::Link< PolicyT, FeaturesT > Class Template Reference

#include <PrismaticJoint.hh>

Public Types

using Axis = typename FromPolicy< PolicyT >::template Use< LinearVector >
 
using JointPtrType = PrismaticJointPtr< PolicyT, FeaturesT >
 
- Public Types inherited from Entity< PolicyT, FeaturesT >
using Features = FeaturesT
 
using Pimpl = typename detail::DeterminePlugin< Policy, Features >::type
 
using Policy = PolicyT
 

Public Member Functions

JointPtrType AttachPrismaticJoint (const BaseLinkPtr< PolicyT > &_parent, const std::string &_name="prismatic", const Axis &_axis=Axis::UnitX())
 Attach this link to another link using a prismatic joint. More...
 
- Public Member Functions inherited from Entity< PolicyT, FeaturesT >
virtual ~Entity ()=default
 Virtual destructor. More...
 
std::size_t EntityID () const
 Get the unique ID value of this Entity. More...
 
const std::shared_ptr< void > & EntityReference () const
 Get a reference-counting std::shared_ptr to the object inside the implementation that this object provides an abstraction for. More...
 
const Identity & FullIdentity () const
 Get the Identity object of this Entity. More...
 

Additional Inherited Members

- Protected Member Functions inherited from Entity< PolicyT, FeaturesT >
 Entity (const std::shared_ptr< Pimpl > &_pimpl=nullptr, const Identity &_identity=Identity())
 Constructor for the Entity. More...
 
 Entity (std::shared_ptr< Pimpl > &&_pimpl, const Identity &_identity)
 Constructor that allows the pimpl to be moved instead of copied. More...
 
template<typename FeatureT >
FeatureT::template Implementation< PolicyT > * Interface ()
 Get a pointer to the implementation of FeatureT. More...
 
template<typename FeatureT >
const FeatureT::template Implementation< PolicyT > * Interface () const
 Same as Interface(), but const-qualified so that const entities can request const-qualified interfaces from the implementation. More...
 
- Protected Attributes inherited from Entity< PolicyT, FeaturesT >
Identity identity
 This field contains information to identify the entity. More...
 
std::shared_ptr< Pimplpimpl
 This is a pointer to the physics engine implementation, and it can be used by the object features to find the interfaces that they need in order to function. More...
 

Member Typedef Documentation

◆ Axis

using Axis = typename FromPolicy<PolicyT>::template Use<LinearVector>

◆ JointPtrType

using JointPtrType = PrismaticJointPtr<PolicyT, FeaturesT>

Member Function Documentation

◆ AttachPrismaticJoint()

JointPtrType AttachPrismaticJoint ( const BaseLinkPtr< PolicyT > &  _parent,
const std::string _name = "prismatic",
const Axis _axis = Axis::UnitX() 
)

Attach this link to another link using a prismatic joint.

Parameters
[in]_parentThe parent link for the joint. Pass in a nullptr to attach the link to the world.
[in]_nameThe name for this joint.
[in]_axisThe joint axis for the new joint. The rest of the joint properties will be left to the default values of the physics engine. TODO(MXG): Instead of _axis, consider passing in a struct containing all base joint properties plus the axis.
Returns
A reference to the newly constructed PrismaticJoint.

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