Skip to content

Commit feb4ea3

Browse files
authored
Add API to check if sensor is in trigger mode (gazebosim#441)
Signed-off-by: Ian Chen <[email protected]>
1 parent 4d2ae18 commit feb4ea3

File tree

3 files changed

+14
-1
lines changed

3 files changed

+14
-1
lines changed

include/gz/sensors/Sensor.hh

+4
Original file line numberDiff line numberDiff line change
@@ -253,6 +253,10 @@ namespace gz
253253
/// trigger.
254254
public: bool HasPendingTrigger() const;
255255

256+
/// \brief Whether the sensor trigger mode is enabled.
257+
/// \return True if the sensor is in trigger mode, false otherwise
258+
public: bool IsTriggered() const;
259+
256260
GZ_UTILS_WARN_IGNORE__DLL_INTERFACE_MISSING
257261
/// \internal
258262
/// \brief Data pointer for private data

src/Sensor.cc

+8-1
Original file line numberDiff line numberDiff line change
@@ -653,10 +653,17 @@ void SensorPrivate::DisableTriggered() {
653653
}
654654

655655
//////////////////////////////////////////////////
656-
bool Sensor::HasPendingTrigger() const {
656+
bool Sensor::HasPendingTrigger() const
657+
{
657658
if (!this->dataPtr->IsTriggered())
658659
return false;
659660

660661
std::lock_guard<std::mutex> triggerLock(this->dataPtr->triggerMutex);
661662
return this->dataPtr->pendingTrigger;
662663
}
664+
665+
//////////////////////////////////////////////////
666+
bool Sensor::IsTriggered() const
667+
{
668+
return this->dataPtr->IsTriggered();
669+
}

src/Sensor_TEST.cc

+2
Original file line numberDiff line numberDiff line change
@@ -477,8 +477,10 @@ TEST(Sensor_TEST, Trigger)
477477
sensor.SetUpdateRate(5);
478478
EXPECT_DOUBLE_EQ(kUpdateRate, sensor.UpdateRate());
479479

480+
EXPECT_FALSE(sensor.IsTriggered());
480481
constexpr char kTriggerTopic[] = "/trigger";
481482
EXPECT_TRUE(sensor.SetTriggered(true, kTriggerTopic));
483+
EXPECT_TRUE(sensor.IsTriggered());
482484
EXPECT_FALSE(sensor.HasPendingTrigger());
483485

484486
transport::Node node;

0 commit comments

Comments
 (0)