37 std::unique_ptr<Macro> m_macro;
41 std::unique_ptr<Macro>& macro;
59 QJSValue controls()
const noexcept;
60 W_PROPERTY(QJSValue, Controls READ controls)
61 QJSValue triggers()
const noexcept;
62 W_PROPERTY(QJSValue, Triggers READ triggers)
63 QJSValue conditions()
const noexcept;
64 W_PROPERTY(QJSValue, Conditions READ conditions)
66 void setNamespaces(QJSValue ns);
71 QObject* device(QString name);
77 QVariant deviceSettings(QString name);
78 W_SLOT(deviceSettings)
80 QString deviceToJson(QString addr);
83 QString deviceToOSCQuery(QString addr);
84 W_SLOT(deviceToOSCQuery)
86 void createDevice(QString name, QString uuid, QJSValue obj);
87 W_SLOT(createDevice, (QString, QString, QJSValue))
89 void createDevice(QString name, QString uuid, QVariant obj);
90 W_SLOT(createDevice, (QString, QString, QVariant))
92 void createOSCDevice(QString name, QString host,
int in,
int out);
93 W_SLOT(createOSCDevice)
95 void connectOSCQueryDevice(QString name, QString host);
96 W_SLOT(connectOSCQueryDevice)
98 void removeDevice(QString name);
101 void createQMLWebSocketDevice(QString name, QString text);
102 W_SLOT(createQMLWebSocketDevice)
104 void createQMLSerialDevice(QString name, QString port, QString text);
105 W_SLOT(createQMLSerialDevice)
108 W_SLOT(enumerateDevices, ())
111 W_SLOT(enumerateDevices, (
const QString&))
114 W_SLOT(enumerateDevices, (
const QStringList&))
117 W_SLOT(listenDevice, (
const QString&))
119 void iterateDevice(
const QString& name,
const QJSValue& op);
120 W_SLOT(iterateDevice, (
const QString&,
const QJSValue&))
122 void setDeviceLearn(
const QString& name,
bool learn);
123 W_SLOT(setDeviceLearn, (
const QString&,
bool))
127 void createAddress(QString addr, QString type);
128 W_SLOT(createAddress)
133 void setUnit(QString addr, QString unit);
136 QObject* createProcess(QObject* interval, QString name, QString data);
137 W_SLOT(createProcess)
140 int processes(QObject* obj);
145 QObject* process(QObject* obj,
int index);
151 QObject* parentProcess(QObject* obj);
152 W_SLOT(parentProcess)
156 QObject* parentInterval(QObject* obj);
157 W_SLOT(parentInterval)
159 void loadPreset(QObject* process, QString json);
161 QString savePreset(QObject* process);
164 void setName(QObject* sel, QString new_name);
168 void setComment(QObject* sel, QString comment);
171 QObject* createBox(QObject* obj, QString startTime, QString duration,
double y);
172 W_SLOT(createBox, (QObject*, QString, QString,
double))
175 createBox(QObject* obj,
double startTimeFlicks,
double durationFlicks,
double y);
176 W_SLOT(createBox, (QObject*,
double,
double,
double))
178 QObject* createState(QObject* ev,
double y);
181 QObject* createIntervalAfter(QObject* obj, QString duration,
double y);
182 W_SLOT(createIntervalAfter)
184 QObject* createIntervalBetween(QObject* startState, QObject* endState);
185 W_SLOT(createIntervalBetween)
190 void enableTrigger(QObject* obj);
191 W_SLOT(enableTrigger)
192 void disableTrigger(QObject* obj);
193 W_SLOT(disableTrigger)
194 void enableCondition(QObject* obj);
195 W_SLOT(enableCondition)
196 void disableCondition(QObject* obj);
197 W_SLOT(disableCondition)
201 void setExpression(QObject* obj, QString expression);
202 W_SLOT(setExpression)
203 QString expression(QObject* obj);
207 void setScriptable(QObject* obj,
bool scriptable);
208 W_SLOT(setScriptable)
209 QString scriptableAddress(QObject* obj);
210 W_SLOT(scriptableAddress)
211 void trigger(QObject* obj);
214 void setIntervalDuration(QObject*
object,
TimeVal flicks);
215 W_SLOT(setIntervalDuration)
216 void setIntervalMinDuration(QObject*
object,
TimeVal flicks);
217 W_SLOT(setIntervalMinDuration)
218 void setIntervalMaxDuration(QObject*
object,
TimeVal flicks);
219 W_SLOT(setIntervalMaxDuration)
220 void setIntervalMaxInfinite(QObject*
object,
bool);
221 W_SLOT(setIntervalMaxInfinite)
222 void setIntervalSpeed(QObject*
object,
double);
223 W_SLOT(setIntervalSpeed)
225 void setAutoTrigger(QObject* timeSync,
bool);
226 W_SLOT(setAutoTrigger)
228 void setProcessLoop(QObject* process,
bool);
229 W_SLOT(setProcessLoop)
233 QObject* port(QObject* obj, QString name);
236 QObject* inlet(QObject* obj,
int index);
237 W_SLOT(inlet, (QObject*,
int))
240 QObject* inlet(QObject* obj, QString name);
241 W_SLOT(inlet, (QObject*, QString))
243 int inlets(QObject* obj);
246 QObject* outlet(QObject* obj,
int index);
247 W_SLOT(outlet, (QObject*,
int))
250 QObject* outlet(QObject* obj, QString name);
251 W_SLOT(outlet, (QObject*, QString))
253 int outlets(QObject* obj);
256 QObject* createCable(QObject* outlet, QObject* inlet);
257 W_SLOT(createCable, (QObject*, QObject*))
258 QObject* createCable(QObject* outlet, QObject* inlet, Process::CableType type);
259 W_SLOT(createCable, (QObject*, QObject*, Process::CableType))
262 QObject* cable(QObject* port,
int index);
263 W_SLOT(cable, (QObject*,
int))
266 int cables(QObject* port);
270 QObject* source(QObject* cable);
274 QObject* sink(QObject* cable);
278 QObject* cable(QObject* outlet, QObject* inlet);
279 W_SLOT(cable, (QObject*, QObject*))
281 void setAddress(QObject* obj, QString addr);
286 void setPropagate(QObject* obj,
bool propagate);
289 void setValue(QObject* obj,
double value);
290 W_SLOT(setValue, (QObject*,
double))
292 void setValue(QObject* obj, QVector2D value);
293 W_SLOT(setValue, (QObject*, QVector2D))
295 void setValue(QObject* obj, QVector3D value);
296 W_SLOT(setValue, (QObject*, QVector3D))
298 void setValue(QObject* obj, QVector4D value);
299 W_SLOT(setValue, (QObject*, QVector4D))
301 void setValue(QObject* obj, QString value);
302 W_SLOT(setValue, (QObject*, QString))
304 void setValue(QObject* obj,
bool value);
305 W_SLOT(setValue, (QObject*,
bool))
307 void setValue(QObject* obj,
int value);
308 W_SLOT(setValue, (QObject*,
int))
310 void setValue(QObject* obj, QList<QString> value);
311 W_SLOT(setValue, (QObject*, QList<QString>))
313 void setValue(QObject* obj, QList<qreal> value);
314 W_SLOT(setValue, (QObject*, QList<qreal>))
316 void setValue(QObject* obj, QList<QVariant> value);
317 W_SLOT(setValue, (QObject*, QList<QVariant>))
326 void editValue(QObject* obj, QVariant value);
333 bool pushExecutionValue(QObject* port, QVariant value);
334 W_SLOT(pushExecutionValue)
336 QString portName(QObject* port);
338 QString valueType(QObject* obj);
341 double min(QObject* obj);
344 double max(QObject* obj);
347 QVector<QVariant> enumValues(QObject* obj);
350 QObject* metadata(QObject* obj)
const noexcept;
356 QObject* documentMetadata()
const noexcept;
357 W_SLOT(documentMetadata)
361 QString documentName()
const noexcept;
365 void setDocumentName(QString name);
366 W_SLOT(setDocumentName)
368 QObject* startState(QObject* obj);
371 QObject* startEvent(QObject* obj);
374 QObject* startSync(QObject* obj);
377 QObject* endState(QObject* obj);
380 QObject* endEvent(QObject* obj);
383 QObject* endSync(QObject* obj);
386 void remove(QObject* obj);
389 void setCurvePoints(QObject* process, QVector<QVariantList> points);
390 W_SLOT(setCurvePoints)
392 void setSteps(QObject* process, QVector<double> points);
395 QVariantList messages(QObject* state);
398 void setMessages(QObject* state, QVariantList msgs);
401 void replaceAddress(QObjectList objects, QString before, QString after);
402 W_SLOT(replaceAddress)
406 QVariantList automate(QObject* interval, QString addr);
407 W_SLOT(automate, (QObject*, QString))
411 QObject* automate(QObject* interval, QObject* port);
412 W_SLOT(automate, (QObject*, QObject*))
424 void withMacro(QJSValue fn);
432 void registerCommandHandler(QString name, QJSValue fn);
433 W_SLOT(registerCommandHandler)
441 void pushCommand(QString name, QJSValue undoPayload, QJSValue redoPayload);
473 void load(QString path);
479 void saveAs(QString path);
485 QObject* find(QString p);
488 QObject* findByLabel(QString p);
492 QObjectList references(QObject* obj);
495 QObjectList targets(QObject* obj);
498 void rebind(QObject* obj, QString from, QString to);
500 QString path(QObject* obj);
502 QObject* findByPath(QString path);
508 QObject* rootInterval();
511 QObject* documentPlugin(QString key);
512 W_SLOT(documentPlugin)
520 void play(QObject* obj);
521 W_SLOT(play, (QObject*))
535 void scrub(
double z);
538 QObject* transport();
539 W_INVOKABLE(transport)
543 QString readFile(QString path);
546 QString relativizeFilePath(QString path);
547 W_SLOT(relativizeFilePath)
549 QString locateFilePath(QString path);
550 W_SLOT(locateFilePath)
555 QObject* selectedObject();
556 W_SLOT(selectedObject)
558 QVariantList selectedObjects();
559 W_SLOT(selectedObjects)
561 void select(QObject* obj);
562 W_SLOT(select, (QObject*))
564 void select(QVariantList objs);
565 W_SLOT(select, (QVariantList))
567 void zoom(
double zx,
double zy);
568 W_SLOT(zoom, (
double,
double));
570 void scroll(
double zx,
double zy);
571 W_SLOT(scroll, (
double,
double));
574 QVariant prompt(QVariant v);
577 bool hasProcessUI(QObject* process);
580 void showProcessUI(QObject* process,
bool show);
581 W_SLOT(showProcessUI)
583 bool hasProcessScriptEditor(QObject* process);
584 W_SLOT(hasProcessScriptEditor)
586 void showProcessScriptEditor(QObject* process,
bool show);
587 W_SLOT(showProcessScriptEditor)
590 void setProcessScriptEditorPlacement(QObject* process, QString placement);
591 W_SLOT(setProcessScriptEditorPlacement)
592 void setProcessUIPlacement(QObject* process, QString placement);
593 W_SLOT(setProcessUIPlacement)
598 QVariantMap availableProcesses()
const noexcept;
599 W_SLOT(availableProcesses)
600 QVariant availableProcessesAndPresets()
const noexcept;
601 W_SLOT(availableProcessesAndPresets)
602 QVariantList libraryEntries(QString filter)
const noexcept;
603 W_SLOT(libraryEntries)
604 QVariant availableProtocols()
const noexcept;
605 W_SLOT(availableProtocols)
607 QByteArray serializeAsJson()
noexcept;
608 W_SLOT(serializeAsJson)
611 QJSValue m_namespaces;
613 void setControlValue(QObject* obj, ossia::value value);