add balancing tool target

This commit is contained in:
2026-05-03 11:17:54 +02:00
parent 5153129909
commit a4427f7f67
12 changed files with 1164 additions and 0 deletions

View File

@@ -0,0 +1,38 @@
#pragma once
#include <memory>
#include <thread>
#include <vector>
#include <QTimer>
#include <QWidget>
#include "ArenaButton.h"
#include "ArenaSimulation.h"
#include "BalancingConfig.h"
#include "GameConfig.h"
class BalancingWindow : public QWidget
{
Q_OBJECT
public:
BalancingWindow(const BalancingConfig& balancingConfig,
const GameConfig& gameConfig,
QWidget* parent = nullptr);
~BalancingWindow() override;
private slots:
void pollStatuses();
private:
struct ArenaEntry
{
std::unique_ptr<ArenaSimulation> simulation;
std::thread worker;
ArenaButton* button;
};
std::vector<ArenaEntry> m_arenas;
QTimer* m_pollTimer;
};