Add set_software_trigger_enabled param and service

This commit is contained in:
jj
2025-06-23 15:11:53 +08:00
parent e52169a56f
commit 9e1ba961d3
6 changed files with 44 additions and 3 deletions
+23
View File
@@ -206,6 +206,11 @@ void OBCameraNode::setupCameraCtrlServices() {
std::shared_ptr<SetBool::Response> response) {
setSYNCHostimeCallback(request, response);
});
set_software_trigger_enabled_srv_ = node_->create_service<SetBool>(
"set_software_trigger_enabled", [this](const std::shared_ptr<SetBool::Request> request,
std::shared_ptr<SetBool::Response> response) {
setSoftwareTriggerEnabledCallback(request, response);
});
set_write_customerdata_srv_ = node_->create_service<SetString>(
"set_write_customer_data", [this](const std::shared_ptr<SetString::Request> request,
std::shared_ptr<SetString::Response> response) {
@@ -1058,6 +1063,24 @@ void OBCameraNode::setSYNCHostimeCallback(
}
}
void OBCameraNode::setSoftwareTriggerEnabledCallback(
const std::shared_ptr<std_srvs::srv::SetBool::Request>& request,
std::shared_ptr<std_srvs::srv::SetBool::Response>& response) {
try {
software_trigger_enabled_ = request->data;
response->success = true;
} catch (const ob::Error& e) {
response->message = e.getMessage();
response->success = false;
} catch (const std::exception& e) {
response->message = e.what();
response->success = false;
} catch (...) {
response->message = "unknown error";
response->success = false;
}
}
void OBCameraNode::setWriteCustomerData(const std::shared_ptr<SetString::Request>& request,
std::shared_ptr<SetString::Response>& response) {
if (request->data.empty()) {