458cb5060f
- 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
23 lines
581 B
C
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);
|