summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2016-07-08 11:43:34 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2016-07-08 11:46:01 -0400
commitb37ec38d867038c6eeac40d75d64206431bcd5e5 (patch)
treeee1126e4bfe25043c5693ae793e9dbbe32763b5e /libs
parentb7a7c1bbd8491f0c66f3fac8e84e8ee08c273f52 (diff)
change VCA number to signed.
Allows for more robust out-of-band (negative) value
Diffstat (limited to 'libs')
-rw-r--r--libs/ardour/ardour/vca.h14
-rw-r--r--libs/ardour/vca.cc10
2 files changed, 12 insertions, 12 deletions
diff --git a/libs/ardour/ardour/vca.h b/libs/ardour/ardour/vca.h
index de0117ae8c..710447fb93 100644
--- a/libs/ardour/ardour/vca.h
+++ b/libs/ardour/ardour/vca.h
@@ -52,10 +52,10 @@ class LIBARDOUR_API VCA : public Stripable,
public Monitorable,
public boost::enable_shared_from_this<VCA> {
public:
- VCA (Session& session, uint32_t num, const std::string& name);
+ VCA (Session& session, int32_t num, const std::string& name);
~VCA();
- uint32_t number () const { return _number; }
+ int32_t number () const { return _number; }
int init ();
XMLNode& get_state();
@@ -94,12 +94,12 @@ class LIBARDOUR_API VCA : public Stripable,
MonitorState monitoring_state() const;
static std::string default_name_template ();
- static uint32_t next_vca_number ();
+ static int32_t next_vca_number ();
static std::string xml_node_name;
/* used by Session to save/restore the atomic counter */
- static uint32_t get_next_vca_number ();
- static void set_next_vca_number (uint32_t);
+ static int32_t get_next_vca_number ();
+ static void set_next_vca_number (int32_t);
boost::shared_ptr<GainControl> gain_control() const { return _gain_control; }
boost::shared_ptr<SoloControl> solo_control() const { return _solo_control; }
@@ -142,14 +142,14 @@ class LIBARDOUR_API VCA : public Stripable,
boost::shared_ptr<MonitorControl> monitoring_control() const { return boost::shared_ptr<MonitorControl>(); }
private:
- uint32_t _number;
+ int32_t _number;
boost::shared_ptr<GainControl> _gain_control;
boost::shared_ptr<SoloControl> _solo_control;
boost::shared_ptr<MuteControl> _mute_control;
- static uint32_t next_number;
+ static int32_t next_number;
static Glib::Threads::Mutex number_lock;
void solo_target_going_away (boost::weak_ptr<Route>);
diff --git a/libs/ardour/vca.cc b/libs/ardour/vca.cc
index 36ed09cf25..abc74fbdc6 100644
--- a/libs/ardour/vca.cc
+++ b/libs/ardour/vca.cc
@@ -34,7 +34,7 @@ using namespace PBD;
using std::string;
Glib::Threads::Mutex VCA::number_lock;
-uint32_t VCA::next_number = 1;
+int32_t VCA::next_number = 1;
string VCA::xml_node_name (X_("VCA"));
string
@@ -43,7 +43,7 @@ VCA::default_name_template ()
return _("VCA %n");
}
-uint32_t
+int32_t
VCA::next_vca_number ()
{
/* we could use atomic inc here, but elsewhere we need more complete
@@ -54,20 +54,20 @@ VCA::next_vca_number ()
}
void
-VCA::set_next_vca_number (uint32_t n)
+VCA::set_next_vca_number (int32_t n)
{
Glib::Threads::Mutex::Lock lm (number_lock);
next_number = n;
}
-uint32_t
+int32_t
VCA::get_next_vca_number ()
{
Glib::Threads::Mutex::Lock lm (number_lock);
return next_number;
}
-VCA::VCA (Session& s, uint32_t num, const string& name)
+VCA::VCA (Session& s, int32_t num, const string& name)
: Stripable (s, name, PresentationInfo (num, PresentationInfo::VCA))
, Muteable (s, name)
, Automatable (s)