Beginning of work of get central configuration object
[apps/low-level-can-service.git] / src / diagnostic / diagnostic-message.hpp
index 1ee9d96..ac6ca18 100644 (file)
@@ -67,28 +67,30 @@ typedef struct _Obd2Pid {
  */
 class obd2_signals_t {
        private:
-               uint8_t pid_;
-               const char* generic_name_;
-               const int min_;
-               const int max_;
-               enum UNIT unit_;
-               int frequency_;
-               bool supported_;
+               uint8_t pid_; /*!< pid - The 1 byte PID.*/
+               const std::string generic_name_; /*!< generic_name_ - A human readable name to use for this PID when published.*/
+               const int min_; /*!< min_ - Minimum value that can take this pid */
+               const int max_; /*!< max_ - Maximum value that can take this pid */
+               enum UNIT unit_; /*!< unit_ : Which unit system is used by that pid. See enum UNIT above.*/
+               int frequency_; /*!< frequency - The frequency to request this PID if supported by the vehicle when automatic, recurring OBD-II requests are enabled.*/
+               bool supported_; /*!< supported_ - boolean indicating whether this pid is supported by the vehicle or not.*/
 
        public:
+               const char* generic_name = generic_name_.c_str();
                obd2_signals_t(uint8_t pid, const char* generic_name, const int min_, const int max_, enum UNIT unit, int frequency, bool supported);
 
-               void init_diagnostic_shims(can_bus_dev_t& can_bus_dev);
-               void add_request(int pid);
-               std::vector<Obd2Pid>& get_obd2_signals();
+               uint32_t get_pid();
 
-               uint32_t get_signal_id(const Obd2Pid& sig);
-               void find_obd2_signals(const openxc_DynamicField &key, std::vector<Obd2Pid*>& found_signals);
+               void add_request(int pid);
 
+               void find_obd2_signals(const openxc_DynamicField &key, std::vector<obd2_signals_t*>& found_signals);
 
                bool is_obd2_response(can_message_t can_message);
                bool is_obd2_request(DiagnosticRequest *request);
                bool is_obd2_signal(const char *name);
 
                float decode_obd2_response(const DiagnosticResponse* response, float parsedPayload);
-};
\ No newline at end of file
+};
+
+uint32_t get_signal_id(obd2_signals_t& sig);
+std::vector<obd2_signals_t>& get_obd2_signals();
\ No newline at end of file