33 #ifndef DART_DYNAMICS_SMARTPOINTER_HPP_
34 #define DART_DYNAMICS_SMARTPOINTER_HPP_
94 #define DART_DYNAMICS_MAKE_BODYNODEPTR(X) \
96 using X##Ptr = TemplateBodyNodePtr<X>; \
97 using Const##X##Ptr = TemplateBodyNodePtr<const X>; \
98 using Weak##X##Ptr = TemplateWeakBodyNodePtr<X>; \
99 using WeakConst##X##Ptr = TemplateWeakBodyNodePtr<const X>;
115 #define DART_DYNAMICS_MAKE_BN_DEPENDENT_PTR(X) \
117 using X##Ptr = Template##X##Ptr<X, BodyNode>; \
118 using Const##X##Ptr = Template##X##Ptr<const X, const BodyNode>; \
119 using Weak##X##Ptr = TemplateWeak##X##Ptr<X, BodyNode>; \
120 using WeakConst##X##Ptr = TemplateWeak##X##Ptr<const X, const BodyNode>;
142 #define DART_DYNAMICS_MAKE_NODEPTR(X) \
144 using X##Ptr = TemplateNodePtr<X, BodyNode>; \
145 using Const##X##Ptr = TemplateNodePtr<const X, const BodyNode>; \
146 using Weak##X##Ptr = TemplateWeakNodePtr<X, BodyNode>; \
147 using WeakConst##X##Ptr = TemplateWeakNodePtr<const X, const BodyNode>;
170 #define DART_DYNAMICS_MAKE_IK_PTR(X) \
172 using X##Ptr = TemplateInverseKinematicsPtr<X, JacobianNodePtr>; \
173 using Const##X##Ptr \
174 = TemplateInverseKinematicsPtr<const X, ConstJacobianNodePtr>; \
175 using Weak##X##Ptr = TemplateWeakInverseKinematicsPtr<X, JacobianNodePtr>; \
176 using WeakConst##X##Ptr \
177 = TemplateWeakInverseKinematicsPtr<const X, ConstJacobianNodePtr>;
Definition: ArrowShape.hpp:42
BodyNode class represents a single node of the skeleton.
Definition: BodyNode.hpp:79
Definition: BoxShape.hpp:42
Branch is a specialized type of Linkage that represents a complete subtree of a Skeleton.
Definition: Branch.hpp:45
Chain is a specialized type of Linkage that represents a single unbranching and fully connected seque...
Definition: Chain.hpp:47
Definition: CylinderShape.hpp:42
DegreeOfFreedom class is a proxy class for accessing single degrees of freedom (aka generalized coord...
Definition: DegreeOfFreedom.hpp:55
Definition: EllipsoidShape.hpp:42
Definition: EndEffector.hpp:81
The InverseKinematics class provides a convenient way of setting up an IK optimization problem.
Definition: InverseKinematics.hpp:76
The JacobianNode class serves as a common interface for BodyNodes and EndEffectors to both be used as...
Definition: JacobianNode.hpp:55
class Joint
Definition: Joint.hpp:60
The LineSegmentShape facilitates creating graphs of line segments.
Definition: LineSegmentShape.hpp:46
A Linkage is a ReferentialSkeleton with the special property that all the BodyNodes included in it fo...
Definition: Linkage.hpp:54
Definition: MeshShape.hpp:47
The Node class is a base class for BodyNode and any object that attaches to a BodyNode.
Definition: Node.hpp:81
PlaneShape represents infinite plane has normal and offset as properties.
Definition: PlaneShape.hpp:43
ReferentialSkeleton is a base class used to implement Linkage, Group, and other classes that are used...
Definition: ReferentialSkeleton.hpp:48
Definition: ShapeFrame.hpp:192
Definition: ShapeNode.hpp:49
The SimpleFrame class offers a user-friendly way of creating arbitrary Frames within the kinematic tr...
Definition: SimpleFrame.hpp:52
class Skeleton
Definition: Skeleton.hpp:59
SoftBodyNode represent a soft body that has one deformable skin.
Definition: SoftBodyNode.hpp:46
Definition: SoftMeshShape.hpp:47
#define DART_COMMON_DECLARE_SHARED_WEAK(X)
Definition: SmartPointer.hpp:41
#define DART_DYNAMICS_MAKE_NODEPTR(X)
Definition: SmartPointer.hpp:142
#define DART_DYNAMICS_MAKE_BN_DEPENDENT_PTR(X)
Definition: SmartPointer.hpp:115
#define DART_DYNAMICS_MAKE_IK_PTR(X)
Definition: SmartPointer.hpp:170
#define DART_DYNAMICS_MAKE_BODYNODEPTR(X)
Definition: SmartPointer.hpp:94
Definition: BulletCollisionDetector.cpp:65