51struct SlotPresenter : ossia::variant<LayerSlotPresenter, NodalSlotPresenter>
63 : ossia::variant<LayerSlotPresenter, NodalSlotPresenter>{std::move(l)}
67 : ossia::variant<LayerSlotPresenter, NodalSlotPresenter>{std::move(l)}
73 return ossia::get_if<LayerSlotPresenter>((variant*)
this);
77 return ossia::get_if<NodalSlotPresenter>((variant*)
this);
80 template <
typename Layer,
typename Nodal>
81 auto visit(
const Layer& lfun,
const Nodal& nfun)
89 } visitor{lfun, nfun};
90 return ossia::visit(visitor, (variant&)*
this);
93 template <
typename Layer,
typename Nodal>
94 auto visit(
const Layer& lfun,
const Nodal& nfun)
const
102 } visitor{lfun, nfun};
103 return ossia::visit(visitor, (
const variant&)*
this);
106 template <
typename F>
107 auto visit(
const F& fun)
109 return ossia::visit(fun, (variant&)*
this);
112 template <
typename F>
113 auto visit(
const F& fun)
const
115 return ossia::visit(fun, (
const variant&)*
this);
118 void cleanup(QGraphicsScene* sc)
120 if(
auto p = getLayerSlot())
122 else if(
auto p = getNodalSlot())