allow audio engine to react to keyboard inputs

This commit is contained in:
2026-06-10 20:44:04 -05:00
parent 7231d948bc
commit 8eb5a619ad
8 changed files with 67 additions and 29 deletions

View File

@@ -17,8 +17,20 @@ int main(int argc, char* argv[]) {
QGuiApplication app(argc, argv);
QQmlApplicationEngine engine;
// create app objects
ConfigService config = ConfigService("config/sonobulus.cfg");
LoggerService logger = LoggerService(&config, "Engine");
NoteQueue queue = NoteQueue();
KeyboardController keyboard(&config, &logger, &queue);
// audio synthesizer doohickey
AudioEngine audioEngine = AudioEngine(&config, &logger, &queue);
audioEngine.start();
// attach backend gui components
qmlRegisterType<TimerComponent>("AppDemo", 1, 0, "TimerComponent");
engine.rootContext()->setContextProperty("keyboardController", &keyboard);
// adds the TimerComponent type (exposed in qml as "TimerComponent") to the module named"AppDemo" (numbers mean version 1.0)
// load qml
@@ -31,16 +43,6 @@ int main(int argc, char* argv[]) {
return -1;
}
// create app objects
ConfigService config = ConfigService("config/sonobulus.cfg");
LoggerService logger = LoggerService(&config, "Engine");
NoteQueue queue = NoteQueue();
KeyboardController keyboard = KeyboardController(&config, &logger, &queue);
// audio synthesizer doohickey
AudioEngine audioEngine = AudioEngine(&logger);
audioEngine.start();
// execute app
return app.exec();
}