ASAPCabinetFE
 
Loading...
Searching...
No Matches
screenshot_manager.h
Go to the documentation of this file.
1
11#ifndef SCREENSHOT_MANAGER_H
12#define SCREENSHOT_MANAGER_H
13
18#include <string>
19
24class IConfigService;
25
31
36class ISoundManager;
37
48public:
60 ScreenshotManager(const std::string& exeDir, IConfigService* configManager,
61 IKeybindProvider* keybindProvider, ISoundManager* soundManager);
62
71 void launchScreenshotMode(const std::string& vpxFile) override;
72
78 bool isActive() const override { return isRunning_; }
79
80private:
81 std::string exeDir_;
82 IConfigService* configManager_;
83 IKeybindProvider* keybindProvider_;
84 ISoundManager* soundManager_;
85 ScreenshotWindow window_;
86 ScreenshotCapture capture_;
87 ProcessHandler process_;
88 bool isRunning_;
89};
90
91#endif // SCREENSHOT_MANAGER_H
Interface for configuration services (forward declaration).
Definition iconfig_service.h:30
Interface for keybind providers (forward declaration).
Definition ikeybind_provider.h:30
Interface for managing screenshot capture operations.
Definition iscreenshot_manager.h:24
Interface for managing sound operations.
Definition isound_manager.h:14
Manages launching and terminating VPX processes.
Definition process_handler.h:29
Captures screenshots of specific windows.
Definition screenshot_capture.h:26
Manages screenshot capture mode.
Definition screenshot_manager.h:47
void launchScreenshotMode(const std::string &vpxFile) override
Launches screenshot mode for a VPX file.
Definition screenshot_manager.cpp:21
bool isActive() const override
Checks if screenshot mode is active.
Definition screenshot_manager.h:78
Manages the SDL window for screenshot capture UI.
Definition screenshot_window.h:38
Defines the IScreenshotManager interface for screenshot capture operations in ASAPCabinetFE.
Defines the ProcessHandler class for managing VPX processes in ASAPCabinetFE.
Defines the ScreenshotCapture class for capturing screenshots in ASAPCabinetFE.
Defines the ScreenshotWindow class for managing the screenshot UI window in ASAPCabinetFE.