Separation of classes in the same file.
[apps/agl-service-can-low-level.git] / src / can / can-bus.hpp
index d4d6d74..b4f1a3e 100644 (file)
@@ -29,6 +29,7 @@
 #include "can-signals.hpp"
 #include "can-message.hpp"
 #include "can-bus-dev.hpp"
+#include "../obd2/active-diagnostic-request.hpp"
 
 #include "../low-can-binding.hpp"
 
@@ -53,11 +54,11 @@ private:
 
        void can_decode_message();
        std::thread th_decoding_; /// < thread that'll handle decoding a can frame
-       bool is_decoding_; /// < boolean member controling thread while loop
+       bool is_decoding_ = false; /// < boolean member controling thread while loop
 
        void can_event_push();
        std::thread th_pushing_; /// < thread that'll handle pushing decoded can frame to subscribers
-       bool is_pushing_; /// < boolean member controling thread while loop
+       bool is_pushing_ = false; /// < boolean member controling thread while loop
 
        std::condition_variable new_can_message_cv_; /// < condition_variable use to wait until there is a new CAN message to read
        std::mutex can_message_mutex_; /// < mutex protecting the can_message_q_ queue.
@@ -79,6 +80,9 @@ public:
        void start_threads();
        void stop_threads();
 
+       int process_can_signals(can_message_t& can_message);
+       int process_diagnostic_signals(active_diagnostic_request_t* adr, const can_message_t& can_message);
+
        can_message_t next_can_message();
        void push_new_can_message(const can_message_t& can_msg);
        std::mutex& get_can_message_mutex();