From 532d93d5d795c461e0d1a56605ff8934167491f2 Mon Sep 17 00:00:00 2001 From: Blitblank Date: Sat, 14 Feb 2026 19:05:26 -0600 Subject: [PATCH] reorganize project structure --- CMakeLists.txt | 6 +++++- src/{ => drivers}/CMakeLists.txt | 4 +--- src/{ => main}/App.cpp | 2 +- src/{ => main}/App.hpp | 5 ++--- src/main/CMakeLists.txt | 10 ++++++++++ src/{ => main}/main.cpp | 0 src/{ => shared}/common.h | 0 src/{pins.hpp => shared/pins.h} | 0 src/ssd/CMakeLists.txt | 12 ++++++++++++ src/{ => ssd}/SsdInterface.cpp | 0 src/{ => ssd}/SsdInterface.hpp | 2 +- src/tasks/CMakeLists.txt | 12 ++++++++++++ src/{ => tasks}/DemoTask.cpp | 9 +++------ src/{ => tasks}/DemoTask.hpp | 0 src/{ => tasks}/TaskBase.cpp | 0 src/{ => tasks}/TaskBase.hpp | 0 src/wsled/CMakeLists.txt | 12 ++++++++++++ src/{ => wsled}/WsledInterface.cpp | 0 src/{ => wsled}/WsledInterface.hpp | 2 +- 19 files changed, 60 insertions(+), 16 deletions(-) rename src/{ => drivers}/CMakeLists.txt (65%) rename src/{ => main}/App.cpp (94%) rename src/{ => main}/App.hpp (78%) create mode 100644 src/main/CMakeLists.txt rename src/{ => main}/main.cpp (100%) rename src/{ => shared}/common.h (100%) rename src/{pins.hpp => shared/pins.h} (100%) create mode 100644 src/ssd/CMakeLists.txt rename src/{ => ssd}/SsdInterface.cpp (100%) rename src/{ => ssd}/SsdInterface.hpp (97%) create mode 100644 src/tasks/CMakeLists.txt rename src/{ => tasks}/DemoTask.cpp (83%) rename src/{ => tasks}/DemoTask.hpp (100%) rename src/{ => tasks}/TaskBase.cpp (100%) rename src/{ => tasks}/TaskBase.hpp (100%) create mode 100644 src/wsled/CMakeLists.txt rename src/{ => wsled}/WsledInterface.cpp (100%) rename src/{ => wsled}/WsledInterface.hpp (97%) diff --git a/CMakeLists.txt b/CMakeLists.txt index 5fde73f..2bbca0a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -5,7 +5,11 @@ set(PROJECT_MAIN_COMPONENT ${CMAKE_CURRENT_LIST_DIR}/src) set(EXTRA_COMPONENT_DIRS ${CMAKE_CURRENT_LIST_DIR}/config - ${CMAKE_CURRENT_LIST_DIR}/src + ${CMAKE_CURRENT_LIST_DIR}/src/drivers + ${CMAKE_CURRENT_LIST_DIR}/src/main + ${CMAKE_CURRENT_LIST_DIR}/src/tasks + ${CMAKE_CURRENT_LIST_DIR}/src/ssd + ${CMAKE_CURRENT_LIST_DIR}/src/wsled ) # For the esp-idf configuration diff --git a/src/CMakeLists.txt b/src/drivers/CMakeLists.txt similarity index 65% rename from src/CMakeLists.txt rename to src/drivers/CMakeLists.txt index 7cce900..108183c 100644 --- a/src/CMakeLists.txt +++ b/src/drivers/CMakeLists.txt @@ -2,13 +2,11 @@ file(GLOB SRC_FILES "*.c" "*.cpp" - "drivers/*.c" ) idf_component_register( SRCS ${SRC_FILES} PRIV_REQUIRES spi_flash - REQUIRES esp_driver_gpio - REQUIRES esp_driver_spi + REQUIRES esp_driver_gpio esp_driver_spi INCLUDE_DIRS "." ) diff --git a/src/App.cpp b/src/main/App.cpp similarity index 94% rename from src/App.cpp rename to src/main/App.cpp index e4dcc62..08f243c 100644 --- a/src/App.cpp +++ b/src/main/App.cpp @@ -7,7 +7,7 @@ #include "esp_log.h" #include "sdkconfig.h" -#include "pins.hpp" +#include "shared/pins.h" #include "DemoTask.hpp" diff --git a/src/App.hpp b/src/main/App.hpp similarity index 78% rename from src/App.hpp rename to src/main/App.hpp index cd1acd3..798e06c 100644 --- a/src/App.hpp +++ b/src/main/App.hpp @@ -3,6 +3,7 @@ #include +// This class is for managing tasks class App { public: @@ -13,9 +14,7 @@ public: uint32_t main(); private: - - uint32_t ledState = 0; - uint32_t blinkTime = 250; + const char *TAG = "app"; // TODO: instead of this for logging you can use __FILE__ or __func__ }; diff --git a/src/main/CMakeLists.txt b/src/main/CMakeLists.txt new file mode 100644 index 0000000..3b8264f --- /dev/null +++ b/src/main/CMakeLists.txt @@ -0,0 +1,10 @@ + +file(GLOB SRC_FILES + "*.c" + "*.cpp" +) + +idf_component_register( + SRCS ${SRC_FILES} + INCLUDE_DIRS "." ".." +) diff --git a/src/main.cpp b/src/main/main.cpp similarity index 100% rename from src/main.cpp rename to src/main/main.cpp diff --git a/src/common.h b/src/shared/common.h similarity index 100% rename from src/common.h rename to src/shared/common.h diff --git a/src/pins.hpp b/src/shared/pins.h similarity index 100% rename from src/pins.hpp rename to src/shared/pins.h diff --git a/src/ssd/CMakeLists.txt b/src/ssd/CMakeLists.txt new file mode 100644 index 0000000..7f8be18 --- /dev/null +++ b/src/ssd/CMakeLists.txt @@ -0,0 +1,12 @@ + +file(GLOB SRC_FILES + "*.c" + "*.cpp" +) + +idf_component_register( + SRCS ${SRC_FILES} + PRIV_REQUIRES spi_flash + REQUIRES esp_driver_gpio esp_driver_spi + INCLUDE_DIRS "." ".." +) diff --git a/src/SsdInterface.cpp b/src/ssd/SsdInterface.cpp similarity index 100% rename from src/SsdInterface.cpp rename to src/ssd/SsdInterface.cpp diff --git a/src/SsdInterface.hpp b/src/ssd/SsdInterface.hpp similarity index 97% rename from src/SsdInterface.hpp rename to src/ssd/SsdInterface.hpp index 9387483..d11f89e 100644 --- a/src/SsdInterface.hpp +++ b/src/ssd/SsdInterface.hpp @@ -4,7 +4,7 @@ #include "stdint.h" #include "drivers/ssd.h" -#include "common.h" +#include "shared/common.h" class SsdInterface { diff --git a/src/tasks/CMakeLists.txt b/src/tasks/CMakeLists.txt new file mode 100644 index 0000000..7f8be18 --- /dev/null +++ b/src/tasks/CMakeLists.txt @@ -0,0 +1,12 @@ + +file(GLOB SRC_FILES + "*.c" + "*.cpp" +) + +idf_component_register( + SRCS ${SRC_FILES} + PRIV_REQUIRES spi_flash + REQUIRES esp_driver_gpio esp_driver_spi + INCLUDE_DIRS "." ".." +) diff --git a/src/DemoTask.cpp b/src/tasks/DemoTask.cpp similarity index 83% rename from src/DemoTask.cpp rename to src/tasks/DemoTask.cpp index 773ae2f..ca1cdd0 100644 --- a/src/DemoTask.cpp +++ b/src/tasks/DemoTask.cpp @@ -1,14 +1,11 @@ #include "DemoTask.hpp" -#include "driver/gpio.h" -#include "freertos/FreeRTOS.h" -#include "freertos/task.h" #include "esp_log.h" -#include "SsdInterface.hpp" -#include "WsledInterface.hpp" -#include "pins.hpp" +#include "ssd/SsdInterface.hpp" +#include "wsled/WsledInterface.hpp" +#include "shared/pins.h" DemoTask::DemoTask() { diff --git a/src/DemoTask.hpp b/src/tasks/DemoTask.hpp similarity index 100% rename from src/DemoTask.hpp rename to src/tasks/DemoTask.hpp diff --git a/src/TaskBase.cpp b/src/tasks/TaskBase.cpp similarity index 100% rename from src/TaskBase.cpp rename to src/tasks/TaskBase.cpp diff --git a/src/TaskBase.hpp b/src/tasks/TaskBase.hpp similarity index 100% rename from src/TaskBase.hpp rename to src/tasks/TaskBase.hpp diff --git a/src/wsled/CMakeLists.txt b/src/wsled/CMakeLists.txt new file mode 100644 index 0000000..7f8be18 --- /dev/null +++ b/src/wsled/CMakeLists.txt @@ -0,0 +1,12 @@ + +file(GLOB SRC_FILES + "*.c" + "*.cpp" +) + +idf_component_register( + SRCS ${SRC_FILES} + PRIV_REQUIRES spi_flash + REQUIRES esp_driver_gpio esp_driver_spi + INCLUDE_DIRS "." ".." +) diff --git a/src/WsledInterface.cpp b/src/wsled/WsledInterface.cpp similarity index 100% rename from src/WsledInterface.cpp rename to src/wsled/WsledInterface.cpp diff --git a/src/WsledInterface.hpp b/src/wsled/WsledInterface.hpp similarity index 97% rename from src/WsledInterface.hpp rename to src/wsled/WsledInterface.hpp index 59d46f0..6ce3fd2 100644 --- a/src/WsledInterface.hpp +++ b/src/wsled/WsledInterface.hpp @@ -4,7 +4,7 @@ #include "stdint.h" #include "drivers/wsled.h" -#include "common.h" +#include "shared/common.h" class WsledInterface {