Loading...
Searching...
No Matches
SyphonOutput.hpp
1#pragma once
2#include <Device/Protocol/DeviceInterface.hpp>
3#include <Device/Protocol/DeviceSettings.hpp>
4#include <Device/Protocol/ProtocolFactoryInterface.hpp>
5#include <Device/Protocol/ProtocolSettingsWidget.hpp>
6
7#include <Gfx/GfxDevice.hpp>
8#include <Gfx/SharedOutputSettings.hpp>
9
10#include <QLineEdit>
11
12namespace Gfx
13{
14class gfx_protocol_base;
16{
17 SCORE_CONCRETE("087D032D-9A42-4BC9-B3DF-AD9BA9E86C07")
18
19public:
20 QString prettyName() const noexcept override;
21 QUrl manual() const noexcept override;
22
23 Device::DeviceInterface* makeDevice(
24 const Device::DeviceSettings& settings, const Explorer::DeviceDocumentPlugin& doc,
25 const score::DocumentContext& ctx) override;
26 const Device::DeviceSettings& defaultSettings() const noexcept override;
27
28 Device::ProtocolSettingsWidget* makeSettingsWidget() override;
29};
30
31class SyphonDevice final : public GfxOutputDevice
32{
33 W_OBJECT(SyphonDevice)
34public:
35 using GfxOutputDevice::GfxOutputDevice;
37
38private:
39 bool reconnect() override;
40 ossia::net::device_base* getDevice() const override { return m_dev.get(); }
41
42 gfx_protocol_base* m_protocol{};
43 mutable std::unique_ptr<ossia::net::device_base> m_dev;
44};
45
47{
48public:
49 SyphonSettingsWidget(QWidget* parent = nullptr);
50
51 Device::DeviceSettings getSettings() const override;
52};
53}
Definition DeviceInterface.hpp:66
Definition ProtocolSettingsWidget.hpp:22
Definition GfxDevice.hpp:35
Definition SharedOutputSettings.hpp:28
Definition SharedOutputSettings.hpp:52
Definition SyphonOutput.hpp:32
Definition SyphonOutput.hpp:16
Definition SyphonOutput.hpp:47
Definition GfxParameter.hpp:41
Binds the rendering pipeline to ossia processes.
Definition CameraDevice.cpp:28
Definition DeviceSettings.hpp:20
Definition DocumentContext.hpp:18