Loading...
Searching...
No Matches
WindowCaptureDevice.hpp
1#pragma once
2#include <Gfx/GfxDevice.hpp>
3#include <Gfx/GfxInputDevice.hpp>
4#include <Gfx/WindowCapture/WindowCaptureNode.hpp>
5
6#include <Device/Protocol/DeviceInterface.hpp>
7#include <Device/Protocol/DeviceSettings.hpp>
8#include <Device/Protocol/ProtocolFactoryInterface.hpp>
9#include <Device/Protocol/ProtocolSettingsWidget.hpp>
10
11#include <verdigris>
12
13class QComboBox;
14class QDoubleSpinBox;
15class QPushButton;
16class QFormLayout;
17class QLineEdit;
18
19namespace Gfx::WindowCapture
20{
21
23{
24 SCORE_CONCRETE("a7c1e3f0-5d2b-4e8a-9f6c-1b3d5e7a9c0f")
25public:
26 QString prettyName() const noexcept override;
27 QString category() const noexcept override;
28 QUrl manual() const noexcept override;
29
30 Device::DeviceEnumerators
31 getEnumerators(const score::DocumentContext& ctx) const override;
32
33 Device::DeviceInterface* makeDevice(
34 const Device::DeviceSettings& settings,
35 const Explorer::DeviceDocumentPlugin& plugin,
36 const score::DocumentContext& ctx) override;
37 const Device::DeviceSettings& defaultSettings() const noexcept override;
38
39 Device::AddressDialog* makeAddAddressDialog(
41 QWidget* parent) override;
42 Device::AddressDialog* makeEditAddressDialog(
44 const score::DocumentContext& ctx, QWidget*) override;
45
46 Device::ProtocolSettingsWidget* makeSettingsWidget() override;
47
48 QVariant makeProtocolSpecificSettings(const VisitorVariant& visitor) const override;
49
50 void serializeProtocolSpecificSettings(
51 const QVariant& data, const VisitorVariant& visitor) const override;
52
53 bool checkCompatibility(
55 const Device::DeviceSettings& b) const noexcept override;
56};
57
58}
59
60SCORE_SERIALIZE_DATASTREAM_DECLARE(, Gfx::WindowCapture::WindowCaptureSettings);
Definition ProtocolSettingsWidget.hpp:46
Definition DeviceInterface.hpp:66
Definition ProtocolFactoryInterface.hpp:49
Definition ProtocolSettingsWidget.hpp:27
Definition WindowCaptureDevice.hpp:23
Definition AddressSettings.hpp:49
Definition DeviceSettings.hpp:20
Definition WindowCaptureNode.hpp:9
The VisitorVariant struct.
Definition VisitorInterface.hpp:26
Definition DocumentContext.hpp:18