- diagnostic_message_t* diag_msg = configuration_t::instance().get_diagnostic_message(sig);
- DiagnosticRequest* diag_req = configuration_t::instance().get_request_from_diagnostic_message(diag_msg);
-
- // If the requested diagnostic message isn't supported by the car then unssubcribe.
- // no matter what we want, worse case will be a fail unsubscription but at least we don't
- // poll a PID for nothing.
- if(diag_msg->get_supported() && subscribe)
- {
- float frequency = diag_msg->get_frequency();
- subscribe = configuration_t::instance().get_diagnostic_manager().add_recurring_request(
- diag_req, sig.c_str(), false, diag_msg->get_decoder(), diag_msg->get_callback(), (float)frequency);
- //TODO: Adding callback requesting ignition status: diag_req, sig.c_str(), false, diagnostic_message_t::decode_obd2_response, diagnostic_message_t::check_ignition_status, frequency);
- }
- else
- {
- configuration_t::instance().get_diagnostic_manager().cleanup_request(
- configuration_t::instance().get_diagnostic_manager().find_recurring_request(diag_req), true);
- WARNING(binder_interface, "Signal: %s isn't supported. Canceling operation.", sig.c_str());
- return -1;
- }
+ float frequency = sig->get_frequency();
+ subscribe = conf.get_diagnostic_manager().add_recurring_request(
+ diag_req, sig->get_name().c_str(), false, sig->get_decoder(), sig->get_callback(), (float)frequency);
+ //TODO: Adding callback requesting ignition status: diag_req, sig.c_str(), false, diagnostic_message_t::decode_obd2_response, diagnostic_message_t::check_ignition_status, frequency);
+ }
+ else
+ {
+ conf.get_diagnostic_manager().cleanup_request(
+ conf.get_diagnostic_manager().find_recurring_request(diag_req), true);
+ WARNING(binder_interface, "%s: signal: %s isn't supported. Canceling operation.", __FUNCTION__, sig->get_name().c_str());
+ return -1;