2 #include <Process/LayerView.hpp>
3 #include <Process/Process.hpp>
4 #include <Process/ProcessFactory.hpp>
6 #include <Effect/EffectLayer.hpp>
8 #include <score/graphics/RectItem.hpp>
12 template <
typename Model_T>
22 QString prettyName()
const noexcept
override
26 QString category()
const noexcept
override
31 Descriptor descriptor(QString)
const noexcept
override;
38 QString customConstructionData()
const noexcept
override;
44 return new Model_T{duration, data, id, parent};
49 QObject* parent)
final override
51 return score::deserialize_dyn(vis, [&](
auto&& deserializer) {
52 return new Model_T{deserializer, parent};
57 template <
typename Model_T>
60 static_assert(std::is_same<Model_T, void>::value,
"can't be used like this");
64 template <
typename Model_T,
typename Item_T,
typename ExtView_T =
void>
78 QGraphicsItem* parent)
const final override
88 safe_cast<const Model_T&>(lm), safe_cast<EffectLayerView*>(v), context, parent};
91 auto item = makeItem(lm, context, rect);
92 item->setParentItem(rect);
98 QGraphicsItem* parent)
const override
100 return new Item_T{safe_cast<const Model_T&>(proc), ctx, parent};
107 return ((Model_T&)proc).hasExternalUI();
110 QWidget* makeExternalUI(
112 QWidget* parent)
const final override
117 if constexpr(!std::is_same_v<ExtView_T, void>)
118 return new ExtView_T{safe_cast<const Model_T&>(proc), ctx, parent};
Definition: EffectFactory.hpp:66
Definition: EffectLayer.hpp:27
Definition: EffectLayer.hpp:16
Definition: EffectFactory.hpp:14
Definition: score-lib-process/Process/ProcessFactory.hpp:58
Definition: LayerPresenter.hpp:34
Definition: LayerView.hpp:21
The ProcessFactory class.
Definition: score-lib-process/Process/ProcessFactory.hpp:35
The Process class.
Definition: score-lib-process/Process/Process.hpp:61
The id_base_t class.
Definition: Identifier.hpp:57
Definition: RectItem.hpp:64
Definition: RectItem.hpp:12
Base classes and tools to implement processes and layers.
Definition: JSONVisitor.hpp:1324
ProcessFlags
Various settings for processes.
Definition: ProcessFlags.hpp:17
Definition: ProcessContext.hpp:12
Definition: score-lib-process/Process/ProcessMetadata.hpp:37
Definition: TimeValue.hpp:21
The VisitorVariant struct.
Definition: VisitorInterface.hpp:26
Definition: ObjectMatches.hpp:6
Definition: DocumentContext.hpp:18