Loading...
Searching...
No Matches
ConnectionsList.hpp
1#pragma once
2#include <Process/Dataflow/PortType.hpp>
3
4#include <QPointer>
5#include <QString>
6
7#include <score_plugin_dataflow_export.h>
8
9#include <vector>
10
11namespace score
12{
13struct DocumentContext;
14}
15namespace Process
16{
17class Cable;
18class Port;
19class ProcessModel;
20}
21namespace Scenario
22{
24}
25
26namespace Dataflow
27{
30struct SCORE_PLUGIN_DATAFLOW_EXPORT ConnectionRow
31{
32 enum Kind : uint8_t
33 {
34 Cable,
35 Address
36 };
38 enum Status : uint8_t
39 {
40 Resolved,
41 MissingDevice,
42 MissingNode,
43 Pattern
44 };
45
46 Kind kind{};
47 Status status{Resolved};
49 bool addressIsSource{};
50 Process::PortType portType{};
51
52 QPointer<Process::Cable> cable;
54 QPointer<Process::Port> sourcePort;
56 QPointer<Process::Port> sinkPort;
57 QPointer<Process::ProcessModel> sourceProcess;
58 QPointer<Process::ProcessModel> sinkProcess;
60 QPointer<QObject> sourceOwner;
61 QPointer<QObject> sinkOwner;
62
63 QString from;
64 QString to;
66 QString fromGroup;
67 QString toGroup;
68 QString device;
69 QString address;
71 QString mode;
72 QString location;
73};
74
75SCORE_PLUGIN_DATAFLOW_EXPORT
76QString portTypeName(Process::PortType t);
77SCORE_PLUGIN_DATAFLOW_EXPORT
78QString cableTypeName(int t);
79SCORE_PLUGIN_DATAFLOW_EXPORT
80QString statusName(ConnectionRow::Status s);
81
83SCORE_PLUGIN_DATAFLOW_EXPORT
84QString describePort(const Process::Port& port);
85
87SCORE_PLUGIN_DATAFLOW_EXPORT
88QString hierarchyPath(const QObject& obj);
89
91SCORE_PLUGIN_DATAFLOW_EXPORT
92std::vector<ConnectionRow> collectConnections(
94}
Definition Port.hpp:106
Definition ScenarioDocumentModel.hpp:29
Base classes and tools to implement processes and layers.
Definition JSONVisitor.hpp:1115
Main plug-in of score.
Definition ConnectionsList.hpp:22
Base toolkit upon which the software is built.
Definition Application.cpp:83
Definition ConnectionsList.hpp:31
QString mode
Cable mode, or how the address resolves.
Definition ConnectionsList.hpp:71
QPointer< Process::Port > sinkPort
The cable's sink; null for an address binding.
Definition ConnectionsList.hpp:56
QString fromGroup
Process name, or device name for the address end.
Definition ConnectionsList.hpp:66
Status
Where an address binding stands.
Definition ConnectionsList.hpp:39
QPointer< QObject > sourceOwner
The process or interval holding each port.
Definition ConnectionsList.hpp:60
QPointer< Process::Port > sourcePort
The cable's source, or the bound port.
Definition ConnectionsList.hpp:54
Definition DocumentContext.hpp:18