in ctrl_pkg/src/ctrl_state.cpp [501:519]
void CalibrationCtrl::getCalibration(int type, std::vector<int> &cal) {
cal.clear();
auto srvRequest = std::make_shared<deepracer_interfaces_pkg::srv::GetCalibrationSrv::Request>();
srvRequest->cal_type = type;
auto future_result = servoGetCalClient_->async_send_request(srvRequest);
future_result.wait();
auto srvResponse = std::make_shared<deepracer_interfaces_pkg::srv::GetCalibrationSrv::Response>();
srvResponse = future_result.get();
if(srvResponse->error != 0){
RCLCPP_ERROR(ctrlNode->get_logger(), "Getting calibration failed.");
}
for (int i = 0; i < ServoCalType::total; ++i) {
cal.push_back(0);
}
cal[ServoCalType::max] = srvResponse->max;
cal[ServoCalType::mid] = srvResponse->mid;
cal[ServoCalType::min] = srvResponse->min;
cal[ServoCalType::polarity] = srvResponse->polarity;
}