Files
loopy_midi_controller/components/controller/app_task.h
T
ash 458cb5060f Fix Phase 1 skeleton: add build system, fix compilation errors
- Add CMakeLists.txt for project and all components
- Add idf_component.yml with TinyUSB dependency
- Create switch_stub.cpp implementation
- Fix app_task.h to match .cpp implementation (2-param signature)
- Fix led_stub.h/cpp class naming (DefaultLedStub)
- Fix midi_transport.cpp TinyUSB API usage (tud_midi_*)
- Move main.cpp to main/ directory
- Add sdkconfig.defaults for ESP32-S3
2026-06-23 08:59:53 +00:00

23 lines
581 B
C

// components/controller/app_task.h
#pragma once
#include <freertos/FreeRTOS.h>
#include <freertos/queue.h>
#include "midi/midi_transport.h"
#include "hal/led_stub.h"
#include "hal/switch_stub.h"
// Application task parameters
struct AppTaskParams {
LedStub* led_driver;
SwitchStub* switch_driver;
QueueHandle_t midi_queue;
};
// Application task function
BaseType_t app_task(void* parameters);
// Application state management
void app_process_midi_event(const MidiEvent& event, LedStub* led_driver);
void app_process_switch_event(uint8_t switch_id, bool pressed);