10#ifndef WINDOW_MANAGER_H
11#define WINDOW_MANAGER_H
123 void getWindowSetup(
int& playfieldX,
int& playfieldY,
int& playfieldWidth,
int& playfieldHeight,
124 int& backglassX,
int& backglassY,
int& backglassWidth,
int& backglassHeight,
125 int& dmdX,
int& dmdY,
int& dmdWidth,
int& dmdHeight,
126 int& topperX,
int& topperY,
int& topperWidth,
int& topperHeight)
override;
133 std::unique_ptr<SDL_Window, void(*)(SDL_Window*)>& window;
134 std::unique_ptr<SDL_Renderer, void(*)(SDL_Renderer*)>& renderer;
159 void createOrUpdateWindow(std::unique_ptr<SDL_Window,
void(*)(SDL_Window*)>& window,
160 std::unique_ptr<SDL_Renderer,
void(*)(SDL_Renderer*)>& renderer,
162 int width,
int height,
163 int posX,
int posY,
float dpiScale,
bool enableDpiScaling);
165 std::unique_ptr<SDL_Window, void(*)(SDL_Window*)> playfieldWindow_;
166 std::unique_ptr<SDL_Window, void(*)(SDL_Window*)> backglassWindow_;
167 std::unique_ptr<SDL_Window, void(*)(SDL_Window*)> dmdWindow_;
168 std::unique_ptr<SDL_Window, void(*)(SDL_Window*)> topperWindow_;
169 std::unique_ptr<SDL_Renderer, void(*)(SDL_Renderer*)> playfieldRenderer_;
170 std::unique_ptr<SDL_Renderer, void(*)(SDL_Renderer*)> backglassRenderer_;
171 std::unique_ptr<SDL_Renderer, void(*)(SDL_Renderer*)> dmdRenderer_;
172 std::unique_ptr<SDL_Renderer, void(*)(SDL_Renderer*)> topperRenderer_;
Interface for managing SDL windows and renderers.
Definition iwindow_manager.h:27
Manages SDL windows and renderers for VPX displays.
Definition window_manager.h:24
SDL_Renderer * getDMDRenderer() override
Gets the DMD renderer.
Definition window_manager.h:90
SDL_Renderer * getPlayfieldRenderer() override
Gets the playfield renderer.
Definition window_manager.h:76
SDL_Renderer * getTopperRenderer() override
Gets the topper renderer.
Definition window_manager.h:97
SDL_Window * getBackglassWindow() override
Gets the backglass window.
Definition window_manager.h:55
SDL_Renderer * getBackglassRenderer() override
Gets the backglass renderer.
Definition window_manager.h:83
SDL_Window * getDMDWindow() override
Gets the DMD window.
Definition window_manager.h:62
SDL_Window * getPlayfieldWindow() override
Gets the playfield window.
Definition window_manager.h:48
void updateWindows(const Settings &settings) override
Updates windows with new settings.
Definition window_manager.cpp:23
SDL_Window * getTopperWindow() override
Gets the topper window.
Definition window_manager.h:69
~WindowManager()=default
Destroys the WindowManager instance.
void getWindowSetup(int &playfieldX, int &playfieldY, int &playfieldWidth, int &playfieldHeight, int &backglassX, int &backglassY, int &backglassWidth, int &backglassHeight, int &dmdX, int &dmdY, int &dmdWidth, int &dmdHeight, int &topperX, int &topperY, int &topperWidth, int &topperHeight) override
Gets the positions of all windows.
Definition window_manager.cpp:130
Defines the IConfigService interface for managing configuration in ASAPCabinetFE.
Defines the IWindowManager interface for managing SDL windows and renderers in ASAPCabinetFE.