diff options
Diffstat (limited to 'src/diagnostic')
-rw-r--r-- | src/diagnostic/diagnostic-manager.cpp | 5 | ||||
-rw-r--r-- | src/diagnostic/diagnostic-manager.hpp | 4 |
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, |