summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/io.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2008-01-07 20:14:16 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2008-01-07 20:14:16 +0000
commit18695cdfe3cc600360ad15d37d55eb6a4e8d4a2f (patch)
treee91b228c968145e54ea57b1206c7b763e28c04e3 /libs/ardour/ardour/io.h
parent3b6300156b240e3daeab3cd34d1b937a20a657f2 (diff)
merge keybindings/menus from SAE; report duplicate port errors during session loading more usefully; do not do disk i/o from inactive tracks (related: move Route::_active to IO::_active
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@2834 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/ardour/io.h')
-rw-r--r--libs/ardour/ardour/io.h57
1 files changed, 32 insertions, 25 deletions
diff --git a/libs/ardour/ardour/io.h b/libs/ardour/ardour/io.h
index a5a6ebd20e..1bd913aec9 100644
--- a/libs/ardour/ardour/io.h
+++ b/libs/ardour/ardour/io.h
@@ -72,6 +72,9 @@ class IO : public PBD::StatefulDestructible
virtual ~IO();
+ bool active() const { return _active; }
+ void set_active (bool yn);
+
int input_minimum() const { return _input_minimum; }
int input_maximum() const { return _input_maximum; }
int output_minimum() const { return _output_minimum; }
@@ -158,6 +161,8 @@ class IO : public PBD::StatefulDestructible
uint32_t n_inputs () const { return _ninputs; }
uint32_t n_outputs () const { return _noutputs; }
+ sigc::signal<void> active_changed;
+
sigc::signal<void,IOChange,void*> input_changed;
sigc::signal<void,IOChange,void*> output_changed;
@@ -210,39 +215,41 @@ class IO : public PBD::StatefulDestructible
void reset_max_peak_meters ();
- static void update_meters();
+ static void update_meters();
private:
- static sigc::signal<void> Meter;
- static Glib::StaticMutex m_meter_signal_lock;
- sigc::connection m_meter_connection;
+ static sigc::signal<void> Meter;
+ static Glib::StaticMutex m_meter_signal_lock;
+ sigc::connection m_meter_connection;
public:
- /* automation */
-
- static void set_automation_interval (jack_nframes_t frames) {
- _automation_interval = frames;
- }
-
- static jack_nframes_t automation_interval() {
- return _automation_interval;
- }
-
- void clear_automation ();
+ bool _active;
- bool gain_automation_recording() const {
- return (_gain_automation_curve.automation_state() & (Write|Touch));
- }
-
- bool gain_automation_playback() const {
- return (_gain_automation_curve.automation_state() & Play) ||
- ((_gain_automation_curve.automation_state() & Touch) &&
- !_gain_automation_curve.touching());
- }
+ /* automation */
+
+ static void set_automation_interval (jack_nframes_t frames) {
+ _automation_interval = frames;
+ }
+
+ static jack_nframes_t automation_interval() {
+ return _automation_interval;
+ }
+
+ void clear_automation ();
+
+ bool gain_automation_recording() const {
+ return (_gain_automation_curve.automation_state() & (Write|Touch));
+ }
+
+ bool gain_automation_playback() const {
+ return (_gain_automation_curve.automation_state() & Play) ||
+ ((_gain_automation_curve.automation_state() & Touch) &&
+ !_gain_automation_curve.touching());
+ }
- virtual void set_gain_automation_state (AutoState);
+ virtual void set_gain_automation_state (AutoState);
AutoState gain_automation_state() const { return _gain_automation_curve.automation_state(); }
sigc::signal<void> gain_automation_state_changed;