aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/diagnostic/diagnostic-manager.cpp5
-rw-r--r--src/diagnostic/diagnostic-manager.hpp4
2 files changed, 7 insertions, 2 deletions
diff --git a/src/diagnostic/diagnostic-manager.cpp b/src/diagnostic/diagnostic-manager.cpp
index 45094075..b811eda5 100644
--- a/src/diagnostic/diagnostic-manager.cpp
+++ b/src/diagnostic/diagnostic-manager.cpp
@@ -19,8 +19,11 @@
#include "low-can-binding.hpp"
+diagnostic_manager_t::diagnostic_manager_t()
+{}
+
diagnostic_manager_t::diagnostic_manager_t(can_bus_dev_t& bus)
- : bus_(bus)
+ : bus_(&bus)
{}
void diagnostic_manager_t::shims_logger(const char* m, ...)
diff --git a/src/diagnostic/diagnostic-manager.hpp b/src/diagnostic/diagnostic-manager.hpp
index 03521209..aab233b8 100644
--- a/src/diagnostic/diagnostic-manager.hpp
+++ b/src/diagnostic/diagnostic-manager.hpp
@@ -45,7 +45,7 @@ protected:
private:
DiagnosticShims shims_; /*!< shims_ - An array of shim functions for each CAN bus that plug the diagnostics
* library (uds-c) into the VI's CAN peripheral.*/
- can_bus_dev_t& bus_; /*!< bus_ - A reference to the CAN bus that should be used for all standard OBD-II requests, if the bus is not
+ can_bus_dev_t* bus_; /*!< bus_ - A pointer to the CAN bus that should be used for all standard OBD-II requests, if the bus is not
* explicitly spcified in the request. If NULL, all requests require an explicit bus.*/
std::queue<active_diagnostic_request_t> recurringRequests_; /*!< recurringRequests - A queue of active, recurring diagnostic requests. When
* a response is received for a recurring request or it times out, it is
@@ -61,7 +61,9 @@ private:
bool initialized_; /*!< * initialized - True if the DiagnosticsManager has been initialized with shims. It will interface with the uds-c lib*/
public:
+ diagnostic_manager_t();
diagnostic_manager_t(can_bus_dev_t& bus);
+
void init_diagnostic_shims();
void checkSupportedPids(const active_diagnostic_request_t& request,