Loading...
Searching...
No Matches
DeviceContext.hpp
1#pragma once
2#include <QObject>
3
4#include <verdigris>
5
6class QQmlEngine;
7namespace ossia::net
8{
9class node_base;
10}
11namespace ossia::qt
12{
13class qml_engine_functions;
14}
15
16namespace JS
17{
18class qml_engine_functions;
19class DeviceContext : public QObject
20{
21 W_OBJECT(DeviceContext)
22
23public:
24 explicit DeviceContext(QQmlEngine& engine, QObject* parent = nullptr);
26
27 bool init();
28 ossia::net::node_base* find(const QString& addr);
29
30 QVariant read(const QString& address);
31 W_SLOT(read);
32
33 void write(const QString& address, const QVariant& value);
34 W_SLOT(write);
35
36 void exec(const QString& code) W_SIGNAL(exec, code);
37 void compute(const QString& code, const QString& cb) W_SIGNAL(compute, code, cb);
38 void system(const QString& code) W_SIGNAL(system, code);
39
41 QVariant asArray(QVariant v) const noexcept;
42 W_SLOT(asArray)
43 QVariant asColor(QVariant) const noexcept;
44 W_SLOT(asColor)
45 QVariant asVec2(QVariant) const noexcept;
46 W_SLOT(asVec2)
47 QVariant asVec3(QVariant) const noexcept;
48 W_SLOT(asVec3)
49 QVariant asVec4(QVariant) const noexcept;
50 W_SLOT(asVec4)
51
52 ossia::qt::qml_engine_functions* m_impl{};
53 QQmlEngine& m_engine;
54};
55}
Definition DeviceContext.hpp:20
QVariant asArray(QVariant v) const noexcept
Conversions ///.
Definition DeviceContext.cpp:143