logging
All checks were successful
CI / React UI Build (push) Successful in 38s
CI / Native Windows Build And Tests (push) Successful in 3m12s
CI / Windows Release Package (push) Successful in 3m7s

This commit is contained in:
Aiden
2026-05-12 11:58:29 +10:00
parent 511b67c9bc
commit 44b198b14d
10 changed files with 555 additions and 12 deletions

View File

@@ -1,12 +1,14 @@
#include "app/AppConfig.h"
#include "app/RenderCadenceApp.h"
#include "frames/SystemFrameExchange.h"
#include "logging/Logger.h"
#include "render/RenderThread.h"
#include "VideoIOFormat.h"
#include <windows.h>
#include <iostream>
#include <sstream>
#include <string>
namespace
@@ -38,17 +40,22 @@ private:
int main(int argc, char** argv)
{
RenderCadenceCompositor::AppConfig appConfig = RenderCadenceCompositor::DefaultAppConfig();
RenderCadenceCompositor::Logger::Instance().Start(appConfig.logging);
RenderCadenceCompositor::Log(
"app",
"RenderCadenceCompositor starting. Starts render cadence, system-memory exchange, DeckLink scheduled output, and telemetry. Press Enter to stop.");
ComInitGuard com;
if (!com.Initialize())
{
std::cerr << "COM initialization failed: 0x" << std::hex << com.Result() << std::dec << "\n";
std::ostringstream message;
message << "COM initialization failed: 0x" << std::hex << com.Result();
RenderCadenceCompositor::LogError("app", message.str());
RenderCadenceCompositor::Logger::Instance().Stop();
return 1;
}
std::cout << "RenderCadenceCompositor\n"
<< " Starts render cadence, system-memory exchange, DeckLink scheduled output, and telemetry.\n"
<< " Press Enter to stop.\n";
SystemFrameExchangeConfig frameExchangeConfig;
frameExchangeConfig.width = 1920;
frameExchangeConfig.height = 1080;
@@ -66,7 +73,6 @@ int main(int argc, char** argv)
RenderThread renderThread(frameExchange, renderConfig);
RenderCadenceCompositor::AppConfig appConfig = RenderCadenceCompositor::DefaultAppConfig();
for (int index = 1; index < argc; ++index)
{
const std::string argument = argv[index];
@@ -87,12 +93,15 @@ int main(int argc, char** argv)
std::string error;
if (!app.Start(error))
{
std::cerr << "RenderCadenceCompositor start failed: " << error << "\n";
RenderCadenceCompositor::LogError("app", "RenderCadenceCompositor start failed: " + error);
RenderCadenceCompositor::Logger::Instance().Stop();
return 1;
}
std::string line;
std::getline(std::cin, line);
app.Stop();
RenderCadenceCompositor::Log("app", "RenderCadenceCompositor stopped.");
RenderCadenceCompositor::Logger::Instance().Stop();
return 0;
}