Loading...
Searching...
No Matches
plugins/score-plugin-js/JS/Executor/Component.hpp
1#pragma once
2#include <Process/Execution/ProcessComponent.hpp>
3#include <Process/ExecutionContext.hpp>
4
5#include <JS/Qml/QmlObjects.hpp>
6
7#include <score/document/DocumentContext.hpp>
8#include <score/document/DocumentInterface.hpp>
9
10#include <ossia/dataflow/node_process.hpp>
11#include <ossia/editor/scenario/time_process.hpp>
12#include <ossia/editor/scenario/time_value.hpp>
13
14#include <memory>
15
16namespace JS
17{
18class ProcessModel;
19namespace Executor
20{
21class Component final
22 : public ::Execution::ProcessComponent_T<JS::ProcessModel, ossia::node_process>
23{
24 COMPONENT_METADATA("c2737929-231e-4d57-9088-a2a3a8d3c24e")
25public:
26 Component(JS::ProcessModel& element, const Execution::Context& ctx, QObject* parent);
27 ~Component() override;
28
29private:
30 void on_scriptChange();
31 std::tuple<ossia::inlets, ossia::outlets, std::vector<Execution::ExecutionCommand>>
32 on_cpuScriptChange(const QString& script, Execution::Transaction& trans);
33 std::tuple<ossia::inlets, ossia::outlets, std::vector<Execution::ExecutionCommand>>
34 on_gpuScriptChange(const QString& script, Execution::Transaction& trans);
35 Process::Inlets m_oldInlets;
36 Process::Outlets m_oldOutlets;
37};
38
40}
41}
Definition Process/Execution/ProcessComponent.hpp:119
Definition plugins/score-plugin-js/JS/Executor/Component.hpp:23
Definition JSProcessModel.hpp:43
Definition ExecutionContext.hpp:76
Definition Process/Execution/ProcessComponent.hpp:89
Definition ExecutionTransaction.hpp:18
Definition PortForward.hpp:23
Definition PortForward.hpp:27