55 lines
1.2 KiB
C++
55 lines
1.2 KiB
C++
#include "MainApplication.h"
|
|
#include "FileLogger.h"
|
|
#include "MidiReader.h"
|
|
|
|
MainApplication::MainApplication()
|
|
: mDatabaseManager()
|
|
{
|
|
|
|
}
|
|
|
|
MainApplication::~MainApplication()
|
|
{
|
|
|
|
}
|
|
|
|
void MainApplication::Initialize(const std::filesystem::path& workDir)
|
|
{
|
|
FileLogger::GetInstance().SetWorkDirectory(workDir.string());
|
|
FileLogger::GetInstance().Open();
|
|
MLOG_INFO("Launched");
|
|
|
|
mDatabaseManager = DatabaseManager::Create();
|
|
mDatabaseManager->CreateDatabase(workDir.string() + "/database.db");
|
|
|
|
mNetworkManager = NetworkManager::Create();
|
|
|
|
mAudioManager = AudioManager::Create();
|
|
}
|
|
|
|
void MainApplication::RunServer()
|
|
{
|
|
mNetworkManager->RunHttpServer();
|
|
}
|
|
|
|
void MainApplication::PlayAudio()
|
|
{
|
|
MidiReader reader;
|
|
reader.Read("/home/james/sample.mid");
|
|
// auto device = AudioDevice::Create();
|
|
// mAudioManager->GetAudioInterface()->OpenDevice(device);
|
|
// mAudioManager->GetAudioInterface()->Play(device);
|
|
}
|
|
|
|
void MainApplication::ShutDown()
|
|
{
|
|
mDatabaseManager->OnShutDown();
|
|
mNetworkManager->ShutDown();
|
|
MLOG_INFO("Shut down");
|
|
FileLogger::GetInstance().Close();
|
|
}
|
|
|
|
std::shared_ptr<MainApplication> MainApplication::Create()
|
|
{
|
|
return std::make_shared<MainApplication>();
|
|
}
|