Class MarkerBase

Inheritance Relationships

Derived Types

Class Documentation

class MarkerBase

Subclassed by rviz_default_plugins::displays::markers::ArrowMarker, rviz_default_plugins::displays::markers::LineMarkerBase, rviz_default_plugins::displays::markers::MeshResourceMarker, rviz_default_plugins::displays::markers::PointsMarker, rviz_default_plugins::displays::markers::ShapeMarker, rviz_default_plugins::displays::markers::TextViewFacingMarker, rviz_default_plugins::displays::markers::TriangleListMarker

Public Types

using Marker = visualization_msgs::msg::Marker
using MarkerConstSharedPtr = visualization_msgs::msg::Marker::ConstSharedPtr
using SharedPtr = std::shared_ptr<MarkerBase>

Public Functions

MarkerBase(MarkerCommon *owner, rviz_common::DisplayContext *context, Ogre::SceneNode *parent_node)
virtual ~MarkerBase()
void setMessage(const Marker &message)
void setMessage(const MarkerConstSharedPtr &message)
bool expired()
void updateFrameLocked()
inline const MarkerConstSharedPtr &getMessage() const
inline MarkerID getID()
inline std::string getStringID()
void setInteractiveObject(rviz_common::InteractiveObjectWPtr object)

Associate an InteractiveObject with this MarkerBase.

virtual void setPosition(const Ogre::Vector3 &position)
virtual void setOrientation(const Ogre::Quaternion &orientation)
const Ogre::Vector3 &getPosition()
const Ogre::Quaternion &getOrientation()
inline virtual S_MaterialPtr getMaterials()

Protected Functions

bool transform(const MarkerConstSharedPtr &message, Ogre::Vector3 &pos, Ogre::Quaternion &orient, Ogre::Vector3 &scale)
virtual void onNewMessage(const MarkerConstSharedPtr &old_message, const MarkerConstSharedPtr &new_message) = 0
void extractMaterials(Ogre::Entity *entity, S_MaterialPtr &materials)

Protected Attributes

MarkerCommon *owner_
rviz_common::DisplayContext *context_
Ogre::SceneNode *scene_node_
MarkerConstSharedPtr message_
rclcpp::Time expiration_
std::shared_ptr<MarkerSelectionHandler> handler_