return _("listen"); // no ports, no need for numbering
case Delivery::Send:
return string_compose (_("send %1"), (bitslot = s.next_send_id ()) + 1);
+ case Delivery::Foldback:
+ return string_compose (_("foldback %1"), (bitslot = s.next_aux_send_id ()) + 1);
default:
fatal << string_compose (_("programming error: send created using role %1"), enum_2_string (r)) << endmsg;
abort(); /*NOTREACHED*/
}
XMLNode&
-Send::get_state(void)
+Send::state ()
{
- return state (true);
-}
-
-XMLNode&
-Send::state (bool full)
-{
- XMLNode& node = Delivery::state(full);
+ XMLNode& node = Delivery::state ();
node.set_property ("type", "send");
node.set_property ("selfdestruct", _remove_on_disconnect);
- node.add_child_nocopy (_amp->state (full));
+ node.add_child_nocopy (_amp->get_state ());
return node;
}
*/
if ((prop = node.property ("bitslot")) == 0) {
- if (_role == Delivery::Aux) {
+ if (_role == Delivery::Aux || _role == Delivery::Foldback) {
_bitslot = _session.next_aux_send_id ();
} else if (_role == Delivery::Send) {
_bitslot = _session.next_send_id ();
_bitslot = 0;
}
} else {
- if (_role == Delivery::Aux) {
+ if (_role == Delivery::Aux || _role == Delivery::Foldback) {
_session.unmark_aux_send_id (_bitslot);
_bitslot = string_to<uint32_t>(prop->value());
_session.mark_aux_send_id (_bitslot);
{
/* we ignore Deliver::_display_to_user */
- if (_role == Listen) {
+ if (_role == Listen || _role == Foldback) {
/* don't make the monitor/control/listen send visible */
return false;
}