X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;ds=sidebyside;f=low-can-binding%2Fcan%2Fcan-message-set.hpp;h=bf53c8c5b2512a3520bab8e9894cc3f37e718a97;hb=e2af4a871c6a8bcab4733193948833aed9c5ceb8;hp=94e2d8d5f1b5dd31fa1b8e56846c00b2e1e5d581;hpb=9e444ade872bc436cf12bc12d03c3a5d51ac0b9e;p=apps%2Fagl-service-can-low-level.git diff --git a/low-can-binding/can/can-message-set.hpp b/low-can-binding/can/can-message-set.hpp index 94e2d8d5..bf53c8c5 100644 --- a/low-can-binding/can/can-message-set.hpp +++ b/low-can-binding/can/can-message-set.hpp @@ -20,28 +20,31 @@ #include #include +#include +#include -/// @brief A parent wrapper for a particular set of CAN messages and associated -/// CAN buses(e.g. a vehicle or program). +class can_signal_t; +class can_message_definition_t; +class diagnostic_message_t; + +/// @brief A parent wrapper for a particular set of CAN messages and diagnostic messages +/// (e.g. a vehicle or program). class can_message_set_t { private: uint8_t index_; /// < A numerical ID for the message set, ideally the index in an array for fast lookup const std::string name_; /// < The name of the message set. - uint8_t can_bus_count_; /// < The number of CAN buses defined for this message set. - uint16_t can_message_count_; /// < The number of CAN messages (across all buses) defined for this message set. - uint16_t can_signal_count_; /// < The number of CAN signals (across all messages) defined for this message set. - uint16_t can_command_count_; /// < The number of CanCommmands defined for this message set. - uint16_t obd2_signal_count_; /// < The number of obd2 signals defined for this message set. + std::vector > can_messages_definition_; ///< Vector holding all message definition handled by this message set. + std::vector > diagnostic_messages_; ///< Vector holding all diagnostics messages from JSON signals description file. First vector map to message set public: can_message_set_t( uint8_t index, const std::string& name, - uint8_t can_bus_count, - short unsigned int can_message_count, - short unsigned int can_signal_count, - short unsigned int can_command_count, - short unsigned int obd2_signal_count); + const std::vector >& can_messages_definition, + const std::vector >& diagnostic_messages); + std::vector >& get_can_message_definition(); + std::vector > get_all_can_signals() const; + std::vector >& get_diagnostic_messages(); };