Easy Navigation
Loading...
Searching...
No Matches
DetectionsPerception Class Reference

#include <DetectionsPerception.hpp>

Inheritance diagram for DetectionsPerception:
Collaboration diagram for DetectionsPerception:

Public Member Functions

bool consume_new_data ()
 Atomically reads and clears new_data.
 DetectionsPerception ()
 DetectionsPerception (const DetectionsPerception &other)
DetectionsPerception & operator= (const DetectionsPerception &other)
void set_data (const vision_msgs::msg::Detection3DArray &msg, const rclcpp::Time &msg_stamp, const std::string &msg_frame_id)
 Atomically overwrites stamp/frame_id/data/valid from the subscription callback.
Public Member Functions inherited from PerceptionBase
virtual ~PerceptionBase ()=default

Static Public Member Functions

static bool supports_msg_type (std::string_view t)
 Returns whether the given ROS 2 type name is supported by this perception.

Public Attributes

vision_msgs::msg::Detection3DArray data
 Detection3DArray data received from the an external processing system.
Public Attributes inherited from PerceptionBase
std::string frame_id
 Coordinate frame associated with the perception.
bool new_data = false
 Whether the data has changed since the last observation.
rclcpp::Time stamp
 Timestamp of the perception (ROS time).
bool valid = false
 Whether the perception holds usable data: set with new data, cleared by SensorsNode once it is older than "forget_time".

Static Public Attributes

static constexpr std::string_view default_group_ = "detections"
 Group identifier for image perceptions.

Protected Attributes

std::mutex mutex_

Constructor & Destructor Documentation

◆ DetectionsPerception() [1/2]

DetectionsPerception ( )

◆ DetectionsPerception() [2/2]

DetectionsPerception ( const DetectionsPerception & other)

Member Function Documentation

◆ consume_new_data()

bool consume_new_data ( )

Atomically reads and clears new_data.

Returns
The value of new_data before it was cleared.

◆ operator=()

DetectionsPerception & operator= ( const DetectionsPerception & other)

◆ set_data()

void set_data ( const vision_msgs::msg::Detection3DArray & msg,
const rclcpp::Time & msg_stamp,
const std::string & msg_frame_id )

Atomically overwrites stamp/frame_id/data/valid from the subscription callback.

Guards against a concurrent copy (e.g. via NavState::get_safe()) observing a partially-updated object while this handler's RT-thread callback is writing.

◆ supports_msg_type()

bool supports_msg_type ( std::string_view t)
static

Returns whether the given ROS 2 type name is supported by this perception.

Parameters
tFully qualified message type name (e.g., "vision_msgs/msg/Detection3DArray").
Returns
true if t equals "vision_msgs/msg/Detection3DArray", otherwise false.

Member Data Documentation

◆ data

vision_msgs::msg::Detection3DArray data

Detection3DArray data received from the an external processing system.

◆ default_group_

std::string_view default_group_ = "detections"
staticconstexpr

Group identifier for image perceptions.

◆ mutex_

std::mutex mutex_
mutableprotected

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