From 7994525c5ceca0c3b2a50738981d9dfcf2a9cc5c Mon Sep 17 00:00:00 2001 From: Tim Mayberry Date: Sat, 27 Aug 2016 22:53:51 +1000 Subject: [PATCH] Use XMLNode::get/set_property API in ARDOUR::Delivery --- libs/ardour/delivery.cc | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/libs/ardour/delivery.cc b/libs/ardour/delivery.cc index d95e32a02f..9e87c89346 100644 --- a/libs/ardour/delivery.cc +++ b/libs/ardour/delivery.cc @@ -20,7 +20,7 @@ #include #include "pbd/enumwriter.h" -#include "pbd/convert.h" +#include "pbd/enum_convert.h" #include "ardour/amp.h" #include "ardour/audioengine.h" @@ -36,6 +36,10 @@ #include "pbd/i18n.h" +namespace PBD { + DEFINE_ENUM_CONVERT(ARDOUR::Delivery::Role); +} + namespace ARDOUR { class Panner; } using namespace std; @@ -356,14 +360,14 @@ Delivery::state (bool full_state) XMLNode& node (IOProcessor::state (full_state)); if (_role & Main) { - node.add_property("type", "main-outs"); + node.set_property("type", "main-outs"); } else if (_role & Listen) { - node.add_property("type", "listen"); + node.set_property("type", "listen"); } else { - node.add_property("type", "delivery"); + node.set_property("type", "delivery"); } - node.add_property("role", enum_2_string(_role)); + node.set_property("role", _role); if (_panshell) { node.add_child_nocopy (_panshell->get_state ()); @@ -378,14 +382,11 @@ Delivery::state (bool full_state) int Delivery::set_state (const XMLNode& node, int version) { - XMLProperty const * prop; - if (IOProcessor::set_state (node, version)) { return -1; } - if ((prop = node.property ("role")) != 0) { - _role = Role (string_2_enum (prop->value(), _role)); + if (node.get_property ("role", _role)) { // std::cerr << this << ' ' << _name << " set role to " << enum_2_string (_role) << std::endl; } else { // std::cerr << this << ' ' << _name << " NO ROLE INFO\n";