18 #ifndef SDF_INTERFACE_MODEL_HH_ 19 #define SDF_INTERFACE_MODEL_HH_ 26 #include <ignition/math/Pose3.hh> 27 #include <ignition/utils/ImplPtr.hh> 35 #include "sdf/sdf_config.h" 40 inline namespace SDF_VERSION_NAMESPACE
44 struct PoseRelativeToGraph;
54 std::function<void(const sdf::InterfaceModelPoseGraph &)>;
74 const std::string &_canonicalLinkName,
75 const ignition::math::Pose3d &_poseInParentFrame = {});
79 public:
const std::string &Name()
const;
83 public:
bool Static()
const;
90 public:
const std::string &CanonicalLinkName()
const;
94 public:
const ignition::math::Pose3d &ModelFramePoseInParentFrame()
const;
101 public:
const std::vector<sdf::InterfaceModelConstPtr> &NestedModels()
const;
106 public:
void AddFrame(sdf::InterfaceFrame _frame);
109 public:
const std::vector<sdf::InterfaceFrame> &Frames()
const;
114 public:
void AddJoint(sdf::InterfaceJoint _joint);
117 public:
const std::vector<sdf::InterfaceJoint> &Joints()
const;
122 public:
void AddLink(sdf::InterfaceLink _link);
125 public:
const std::vector<sdf::InterfaceLink> &Links()
const;
129 private:
void InvokeRespostureFunction(
130 sdf::ScopedGraph<PoseRelativeToGraph> _graph)
const;
135 IGN_UTILS_IMPL_PTR(dataPtr)
Interface element representing a Model.
Definition: InterfaceModel.hh:57
std::shared_ptr< const InterfaceModel > InterfaceModelConstPtr
Definition: InterfaceModel.hh:50
std::function< void(const sdf::InterfaceModelPoseGraph &)> RepostureFunction
Function signature for the reposture callback function.
Definition: InterfaceModel.hh:54
#define SDFORMAT_VISIBLE
Use to represent "symbol visible" if supported.
Definition: system_util.hh:41
std::shared_ptr< InterfaceModel > InterfaceModelPtr
Definition: InterfaceModel.hh:49
namespace for Simulation Description Format parser
Definition: Actor.hh:33