mirror of
https://github.com/orbbec/OrbbecSDK_ROS2.git
synced 2026-10-08 05:47:45 +08:00
feat: rename enable_sports_mode to ae_strategy and update related callbacks
This commit is contained in:
@@ -1005,8 +1005,8 @@ void OBCameraNode::setupDevices() {
|
||||
}
|
||||
}
|
||||
if (device_->isPropertySupported(OB_PROP_DEVICE_AE_STRATEGY_INT, OB_PERMISSION_WRITE)) {
|
||||
device_->setIntProperty(OB_PROP_DEVICE_AE_STRATEGY_INT, (enable_sports_mode_ ? 0 : 1));
|
||||
RCLCPP_INFO_STREAM(logger_, "Setting Sports Mode to " << (enable_sports_mode_ ? "ON" : "OFF"));
|
||||
device_->setIntProperty(OB_PROP_DEVICE_AE_STRATEGY_INT, (ae_strategy_ == "motion" ? 1 : 0));
|
||||
RCLCPP_INFO_STREAM(logger_, "Setting AE Strategy to " << ae_strategy_);
|
||||
}
|
||||
|
||||
if ((ae_reference_stream_ == "depth" || ae_reference_stream_ == "color") &&
|
||||
@@ -2308,7 +2308,7 @@ void OBCameraNode::getParameters() {
|
||||
setAndGetNodeParameter<std::string>(intra_camera_sync_reference_, "intra_camera_sync_reference",
|
||||
"Middle");
|
||||
setAndGetNodeParameter<std::string>(ae_reference_stream_, "ae_reference_stream", "depth");
|
||||
setAndGetNodeParameter<bool>(enable_sports_mode_, "enable_sports_mode", false);
|
||||
setAndGetNodeParameter<std::string>(ae_strategy_, "ae_strategy", "motion");
|
||||
|
||||
RCLCPP_INFO_STREAM(logger_, "current time domain: " << time_domain_);
|
||||
RCLCPP_INFO_STREAM(logger_, "hdr_index1_laser_control_ "
|
||||
|
||||
@@ -287,10 +287,10 @@ void OBCameraNode::setupCameraCtrlServices() {
|
||||
std::shared_ptr<SetString::Response> response) {
|
||||
setAEReferenceStreamCallback(request, response);
|
||||
});
|
||||
set_sports_mode_srv_ = node_->create_service<SetBool>(
|
||||
"set_sports_mode", [this](const std::shared_ptr<SetBool::Request> request,
|
||||
std::shared_ptr<SetBool::Response> response) {
|
||||
setSportsModeCallback(request, response);
|
||||
set_ae_strategy_srv_ = node_->create_service<SetString>(
|
||||
"set_ae_strategy", [this](const std::shared_ptr<SetString::Request> request,
|
||||
std::shared_ptr<SetString::Response> response) {
|
||||
setAEStrategyCallback(request, response);
|
||||
});
|
||||
set_streams_enable_srv_ = node_->create_service<SetBool>(
|
||||
"set_streams_enable", [this](const std::shared_ptr<SetBool::Request> request,
|
||||
@@ -1668,16 +1668,18 @@ void OBCameraNode::setAEReferenceStreamCallback(const std::shared_ptr<SetString:
|
||||
response->message = "exception occurred";
|
||||
}
|
||||
}
|
||||
void OBCameraNode::setSportsModeCallback(const std::shared_ptr<SetBool::Request>& request,
|
||||
std::shared_ptr<SetBool::Response>& response) {
|
||||
void OBCameraNode::setAEStrategyCallback(const std::shared_ptr<SetString::Request>& request,
|
||||
std::shared_ptr<SetString::Response>& response) {
|
||||
try {
|
||||
if (device_->isPropertySupported(OB_PROP_DEVICE_AE_STRATEGY_INT, OB_PERMISSION_WRITE)) {
|
||||
device_->setIntProperty(OB_PROP_DEVICE_AE_STRATEGY_INT, request->data ? 1 : 0);
|
||||
if (device_->isPropertySupported(OB_PROP_DEVICE_AE_STRATEGY_INT, OB_PERMISSION_WRITE) &&
|
||||
(request->data == "default" || request->data == "motion")) {
|
||||
device_->setIntProperty(OB_PROP_DEVICE_AE_STRATEGY_INT, request->data == "motion" ? 1 : 0);
|
||||
ae_strategy_ = request->data;
|
||||
response->success = true;
|
||||
response->message = "set sports mode success";
|
||||
response->message = "set AE strategy success";
|
||||
} else {
|
||||
response->success = false;
|
||||
response->message = "set sports mode failed";
|
||||
response->message = "set AE strategy failed";
|
||||
}
|
||||
} catch (...) {
|
||||
response->success = false;
|
||||
|
||||
Reference in New Issue
Block a user