Skip to content
This repository was archived by the owner on Oct 6, 2025. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 8 additions & 15 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
cmake_minimum_required(VERSION 3.10)

project(Cluster LANGUAGES CXX)
message("CMAKE_SYSROOT " ${CMAKE_SYSROOT})
message("CMAKE_LIBRARY_ARCHITECTURE " ${CMAKE_LIBRARY_ARCHITECTURE})

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

set(zenohc_DIR "/usr/local/lib/cmake/zenohc")
set(zenohcxx_DIR "/usr/local/lib/cmake/zenohcxx")

find_package(Qt6 COMPONENTS Core Quick DBus REQUIRED)
find_package(zenohc REQUIRED)
find_package(zenohcxx REQUIRED)
Expand All @@ -21,17 +20,11 @@ set(CMAKE_AUTORCC ON)
qt_add_resources(QT_RESOURCES ./ui/resources.qrc)

# Define Executable Target
add_executable(speedometer
${QT_RESOURCES} # Add Resource File
./src/main.cpp # Main C++ File
./src/CANBusHandler.cpp # CANBusHandler Implementation
./include/CANBusHandler.hpp # CANBusHandler Header
)

target_link_libraries(speedometer zenohcxx::zenohc -lm -ldl Qt6::Core Qt6::DBus Qt6::Quick)

add_executable(zenoh
./middelWare/src/main.cpp
add_executable(InstrumentCluster
${QT_RESOURCES}
./src/main.cpp
./src/InstrumentCluster.cpp
./include/InstrumentCluster.hpp
)

target_link_libraries(zenoh PRIVATE zenohcxx::zenohc)
target_link_libraries(InstrumentCluster zenohcxx::zenohc -lm -ldl Qt6::Core Qt6::DBus Qt6::Quick)
17 changes: 17 additions & 0 deletions MiddleWare/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
cmake_minimum_required(VERSION 3.10)

project(Middelware LANGUAGES CXX)

set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(zenohc_DIR "/usr/local/lib/cmake/zenohc")
set(zenohcxx_DIR "/usr/local/lib/cmake/zenohcxx")

find_package(zenohc REQUIRED)
find_package(zenohcxx REQUIRED)

add_executable(middleWare
./src/main.cpp
)

target_link_libraries(middleWare PRIVATE zenohcxx::zenohc)
File renamed without changes.
35 changes: 0 additions & 35 deletions include/CANBusHandler.hpp

This file was deleted.

97 changes: 97 additions & 0 deletions include/InstrumentCluster.hpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
#ifndef INSTRUMENTCLUSTER_HPP
#define INSTRUMENTCLUSTER_HPP

#include <QObject>
#include <iostream>
#include "zenoh.hxx"

using namespace zenoh;

class InstrumentCluster : public QObject
{
Q_OBJECT
Q_PROPERTY(int speed READ getSpeed NOTIFY speedChanged)
Q_PROPERTY(int battery READ getBattery NOTIFY batteryChanged)
Q_PROPERTY(
bool rightBlinker READ getRightBlinker NOTIFY rightBlinkerChanged)
Q_PROPERTY(bool leftBlinker READ getLeftBlinker NOTIFY leftBlinkerChanged)
Q_PROPERTY(bool lowBeam READ getLowBeam NOTIFY lowBeamChanged)
Q_PROPERTY(bool highBeam READ getHighBeam NOTIFY highBeamChanged)
Q_PROPERTY(
bool frontFogLight READ getFrontFogLight NOTIFY frontFogLightChanged)
Q_PROPERTY(
bool readFogLight READ getRearFogLight NOTIFY rearFogLightChanged)
Q_PROPERTY(bool hazardLight READ getHazardLight NOTIFY hazardLightChanged)
Q_PROPERTY(
bool parkingLight READ getParkingLight NOTIFY parkingLightChanged)
Q_PROPERTY(GearPosition gear READ getGear NOTIFY gearChanged)

public:
enum class GearPosition
{
PARK,
REVERSE,
NEUTRAL,
DRIVE
};

Q_ENUM(GearPosition)

private:
int m_speed;
int m_battery;
bool m_rightBlinker;
bool m_leftBlinker;
bool m_lowBeam;
bool m_highBeam;
bool m_frontFogLight;
bool m_rearFogLight;
bool m_hazardLight;
bool m_parkingLight;
GearPosition m_gear;

Session& m_session;

public:
explicit InstrumentCluster(Session& session, QObject* parent = nullptr);
~InstrumentCluster();

int getSpeed() const;
int getBattery() const;
bool getRightBlinker() const;
bool getLeftBlinker() const;
bool getLowBeam() const;
bool getHighBeam() const;
bool getFrontFogLight() const;
bool getRearFogLight() const;
bool getHazardLight() const;
bool getParkingLight() const;
GearPosition getGear() const;

void setSpeed(int speed);
void setBattery(int battery);
void setRightBlinker(bool rightBlinker);
void setLeftBlinker(bool leftBlinker);
void setLowBeam(bool lowBeam);
void setHighBeam(bool highBeam);
void setFrontFogLight(bool frontFogLight);
void setRearFogLight(bool readFogLight);
void setHazardLight(bool hazardLight);
void setParkingLight(bool parkingLight);
void setGear(GearPosition gear);

signals:
void speedChanged(int speed);
void batteryChanged(int battery);
void rightBlinkerChanged(bool rightBlinker);
void leftBlinkerChanged(bool leftBlinker);
void lowBeamChanged(bool lowBeam);
void highBeamChanged(bool highBeam);
void frontFogLightChanged(bool frontFogLight);
void rearFogLightChanged(bool readFogLight);
void hazardLightChanged(bool hazardLight);
void parkingLightChanged(bool parkingLight);
void gearChanged(GearPosition gear);
};

#endif // INSTRUMENTCLUSTER_HPP
39 changes: 0 additions & 39 deletions src/CANBusHandler.cpp

This file was deleted.

Loading
Loading