diff options
author | Romain Forlot <romain.forlot@iot.bzh> | 2017-03-07 15:35:37 +0100 |
---|---|---|
committer | Romain Forlot <romain.forlot@iot.bzh> | 2017-03-16 17:09:03 +0100 |
commit | fe846f6698710163af5f2658cc90151259b09d0d (patch) | |
tree | 31ffce196635301f05d9231cf653edd53e9dc773 /src/diagnostic/diagnostic-manager.cpp | |
parent | 4d5b071ab451260ef9d3cbf393aca0992104b0d7 (diff) |
Introducing diagnostic manager class.
It will hold communication through uds-c lib allowing
to communication with diagnostic protocol obd2. It is
attached to can_bus_dev_t class 'cause it must regularly
send CAN message through it.
Change-Id: I2d9d8dfaca10e9865bf82b0ae83e65490ca982f8
Signed-off-by: Romain Forlot <romain.forlot@iot.bzh>
Diffstat (limited to 'src/diagnostic/diagnostic-manager.cpp')
-rw-r--r-- | src/diagnostic/diagnostic-manager.cpp | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/src/diagnostic/diagnostic-manager.cpp b/src/diagnostic/diagnostic-manager.cpp new file mode 100644 index 0000000..501c05a --- /dev/null +++ b/src/diagnostic/diagnostic-manager.cpp @@ -0,0 +1,43 @@ +/* + * Copyright (C) 2015, 2016 "IoT.bzh" + * Author "Romain Forlot" <romain.forlot@iot.bzh> + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include "obd2/diagnostic-manager.hpp" + +#include "low-can-binding.hpp" + +diagnostic_manager_t::diagnostic_manager_t(can_bus_dev_t& bus) + : bus_(bus) +{} + +void diagnostic_manager_t::shims_logger(const char* m) +{ + DEBUG(binder_interface, "%s", m); +} + +void diagnostic_manager_t::shims_timer() +{} + +/** + * @brief initialize shims used by UDS lib and set initialized_ to true. + * It is needed before used the diagnostic manager fully because shims are + * required by most member functions. + */ +void diagnostic_manager_t::init_diagnostic_shims() +{ + DiagnosticShims shims_ = diagnostic_init_shims(shims_logger, bus_.send_can_message, NULL); + initialized_ = true; +}
\ No newline at end of file |