#define TMCAGLWM_LOW_CAN_CLIENT_HPP
+#include <string>
#include <vector>
#include <json-c/json.h>
explicit LowCanClient();
~LowCanClient() = default;
+ enum SignalNo {
+ SignalNoVehicliSpeed = 0,
+ SignalNoTransGearPos,
+ SignalNoHeadlame,
+ SignalNoParkingBrake,
+ SignalNoAccelPedalPos,
+
+ SignalNum,
+
+ SignalNoMin = SignalNoVehicliSpeed,
+ SignalNoMax = SignalNum - 1,
+ };
+
+ const std::vector<const char*> kSignalName_{
+ "vehicle.speed",
+ "transmission_gear_position",
+ "headlamp_status",
+ "parking_brake_status",
+ "accelerator.pedal.position",
+ };
+
void initialize();
- void analyzeCanSignal(struct json_object *object);
- bool isChangedParkingBrakeState();
- bool isChangedCarState();
- bool isChangedLampState();
- const char* getCurrentParkingBrakeState();
- const char* getCurrentCarState();
- const char* getCurrentLampState();
+ const char* analyzeCanSignal(struct json_object *object);
+
+ int getCurrentTransGearState();
+ bool getCurrentHeadlampState();
+ bool getCurrentParkingBrakeState();
+ double getCurrentAccelPedalPosition();
+ bool getCurrentAccelPedalState();
+
+ bool isChangedAccelPedalState();
private:
// Disable copy and move
LowCanClient(LowCanClient &&) = delete;
LowCanClient &operator=(LowCanClient &&) = delete;
- const int kNumEvent_ = 4;
- const std::vector<const char*> kEventName_{
- "vehicle.speed",
- "transmission_gear_position",
- "headlamp_status",
- "parking_brake_status"
+ enum TransGearPosVal {
+ TransGearPosValD1 = 1,
+ TransGearPosValD2,
+ TransGearPosValD3,
+ TransGearPosValD4,
+ TransGearPosValD5,
+ TransGearPosValD6,
+ TransGearPosValD7,
+ TransGearPosValD8,
+ TransGearPosValR,
+ TransGearPosValN,
+ };
+
+ const std::vector<const char*> kFilterValue_{
+ "",
+ "",
+ "",
+ "",
+ "", //"{ \"min\": 0, \"max\": 10}",
};
int vehicle_speed_;
int trans_gear_pos_;
- json_bool parking_brake_status_;
json_bool headlamp_status_;
+ json_bool parking_brake_status_;
+ double accel_pedal_pos_;
+ bool accel_pedal_stt_;
- std::string prv_parking_brake_state_;
- std::string crr_parking_brake_state_;
- std::string prv_car_state_;
- std::string crr_car_state_;
- std::string prv_lamp_state_;
- std::string crr_lamp_state_;
-
- bool is_changed_parking_brake_state_;
- bool is_changed_car_state_;
- bool is_changed_lamp_state_;
+ bool is_changed_accel_pedal_stt_;
};
} // namespace wm