Fix unused parameter warnings since GCC apparently doesn't feel like listening to -Wno-unused-parameter

git-svn-id: svn://localhost/ardour2/branches/3.0@5835 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
David Robillard
2009-10-21 00:15:42 +00:00
parent af8c16cfe0
commit bc56eb8bd7
33 changed files with 172 additions and 172 deletions

View File

@@ -2228,7 +2228,7 @@ Editor::set_edit_point_preference (EditPoint ep, bool force)
}
int
Editor::set_state (const XMLNode& node, int version)
Editor::set_state (const XMLNode& node, int /*version*/)
{
const XMLProperty* prop;
XMLNode* geometry;

View File

@@ -157,8 +157,8 @@ Keyboard::get_state (void)
return *node;
}
int
Keyboard::set_state (const XMLNode& node, int version)
int
Keyboard::set_state (const XMLNode& node, int /*version*/)
{
const XMLProperty* prop;

View File

@@ -1001,7 +1001,7 @@ TimeAxisView::get_state ()
}
int
TimeAxisView::set_state (const XMLNode& node, int version)
TimeAxisView::set_state (const XMLNode& node, int /*version*/)
{
const XMLProperty *prop;

View File

@@ -221,7 +221,7 @@ UIConfiguration::get_variables (std::string which_node)
}
int
UIConfiguration::set_state (const XMLNode& root, int version)
UIConfiguration::set_state (const XMLNode& root, int /*version*/)
{
if (root.name() != "Ardour") {
return -1;

View File

@@ -1768,7 +1768,7 @@ AudioDiskstream::get_state ()
}
int
AudioDiskstream::set_state (const XMLNode& node, int version)
AudioDiskstream::set_state (const XMLNode& node, int /*version*/)
{
const XMLProperty* prop;
XMLNodeList nlist = node.children();

View File

@@ -56,7 +56,7 @@ AudioTrack::AudioTrack (Session& sess, string name, Route::Flag flag, TrackMode
use_new_diskstream ();
}
AudioTrack::AudioTrack (Session& sess, const XMLNode& node, int version)
AudioTrack::AudioTrack (Session& sess, const XMLNode& node, int /*version*/)
: Track (sess, node)
{
_set_state (node, Stateful::loading_state_version, false);

View File

@@ -118,7 +118,7 @@ AudioSource::get_state ()
}
int
AudioSource::set_state (const XMLNode& node, int version)
AudioSource::set_state (const XMLNode& node, int /*version*/)
{
const XMLProperty* prop;

View File

@@ -288,7 +288,7 @@ ControlProtocolManager::cpi_by_name (string name)
}
int
ControlProtocolManager::set_state (const XMLNode& node, int version)
ControlProtocolManager::set_state (const XMLNode& node, int /*version*/)
{
XMLNodeList clist;
XMLNodeConstIterator citer;

View File

@@ -720,7 +720,7 @@ Crossfade::get_state ()
}
int
Crossfade::set_state (const XMLNode& node, int version)
Crossfade::set_state (const XMLNode& node, int /*version*/)
{
XMLNodeConstIterator i;
XMLNodeList children;

View File

@@ -104,7 +104,7 @@ FileSource::init (const ustring& pathstr, bool must_exist)
}
int
FileSource::set_state (const XMLNode& node, int version)
FileSource::set_state (const XMLNode& node, int /*version*/)
{
const XMLProperty* prop;

View File

@@ -739,7 +739,7 @@ IO::find_possible_bundle (const string &desired_name)
}
int
IO::get_port_counts_2X (XMLNode const & node, int version, ChanCount& n, boost::shared_ptr<Bundle>& c)
IO::get_port_counts_2X (XMLNode const & node, int /*version*/, ChanCount& n, boost::shared_ptr<Bundle>& /*c*/)
{
XMLProperty const * prop;
XMLNodeList children = node.children ();
@@ -892,7 +892,7 @@ IO::make_connections (const XMLNode& node, int version, bool in)
int
IO::make_connections_2X (const XMLNode& node, int version, bool in)
IO::make_connections_2X (const XMLNode& node, int /*version*/, bool in)
{
const XMLProperty* prop;

View File

@@ -347,7 +347,7 @@ Location::get_state (void)
}
int
Location::set_state (const XMLNode& node, int version)
Location::set_state (const XMLNode& node, int /*version*/)
{
const XMLProperty *prop;
@@ -674,7 +674,7 @@ Locations::get_state ()
}
int
Locations::set_state (const XMLNode& node, int version)
Locations::set_state (const XMLNode& node, int /*version*/)
{
XMLNodeList nlist;
XMLNodeConstIterator niter;

View File

@@ -354,7 +354,7 @@ LV2Plugin::has_editor() const
}
int
LV2Plugin::set_state(const XMLNode& node, int version)
LV2Plugin::set_state(const XMLNode& node, int /*version*/)
{
XMLNodeList nodes;
XMLProperty *prop;

View File

@@ -1232,7 +1232,7 @@ MidiDiskstream::get_state ()
}
int
MidiDiskstream::set_state (const XMLNode& node, int version)
MidiDiskstream::set_state (const XMLNode& node, int /*version*/)
{
const XMLProperty* prop;
XMLNodeList nlist = node.children();

View File

@@ -260,7 +260,7 @@ MidiModel::DeltaCommand::unmarshal_note(XMLNode *xml_note)
#define DELTA_COMMAND_ELEMENT "DeltaCommand"
int
MidiModel::DeltaCommand::set_state (const XMLNode& delta_command, int version)
MidiModel::DeltaCommand::set_state (const XMLNode& delta_command, int /*version*/)
{
if (delta_command.name() != string(DELTA_COMMAND_ELEMENT)) {
return 1;
@@ -646,7 +646,7 @@ MidiModel::DiffCommand::unmarshal_change(XMLNode *xml_change)
}
int
MidiModel::DiffCommand::set_state(const XMLNode& diff_command, int version)
MidiModel::DiffCommand::set_state(const XMLNode& diff_command, int /*version*/)
{
if (diff_command.name() != string(DIFF_COMMAND_ELEMENT)) {
return 1;

View File

@@ -95,7 +95,7 @@ MidiSource::get_state ()
}
int
MidiSource::set_state (const XMLNode& node, int version)
MidiSource::set_state (const XMLNode& node, int /*version*/)
{
const XMLProperty* prop;

View File

@@ -66,7 +66,7 @@ MidiTrack::MidiTrack (Session& sess, string name, Route::Flag flag, TrackMode mo
_mode = mode;
}
MidiTrack::MidiTrack (Session& sess, const XMLNode& node, int version)
MidiTrack::MidiTrack (Session& sess, const XMLNode& node, int /*version*/)
: Track (sess, node, DataType::MIDI)
, _immediate_events(1024) // FIXME: size?
, _step_edit_ring_buffer(64) // FIXME: size?

View File

@@ -103,7 +103,7 @@ MuteMaster::get_value () const
}
int
MuteMaster::set_state (const XMLNode& node, int version)
MuteMaster::set_state (const XMLNode& node, int /*version*/)
{
const XMLProperty* prop;

View File

@@ -172,7 +172,7 @@ StreamPanner::set_position (float xpos, float ypos, float zpos, bool link_call)
}
int
StreamPanner::set_state (const XMLNode& node, int version)
StreamPanner::set_state (const XMLNode& node, int /*version*/)
{
const XMLProperty* prop;
XMLNodeConstIterator iter;
@@ -730,7 +730,7 @@ Multi2dPanner::state (bool /*full_state*/)
}
int
Multi2dPanner::set_state (const XMLNode& node, int version)
Multi2dPanner::set_state (const XMLNode& node, int /*version*/)
{
const XMLProperty* prop;
float newx,newy;

View File

@@ -145,7 +145,7 @@ Processor::state (bool full_state)
}
int
Processor::set_state_2X (const XMLNode & node, int version)
Processor::set_state_2X (const XMLNode & node, int /*version*/)
{
XMLProperty const * prop;

View File

@@ -240,7 +240,7 @@ RCConfiguration::get_variables ()
}
int
RCConfiguration::set_state (const XMLNode& root, int version)
RCConfiguration::set_state (const XMLNode& root, int /*version*/)
{
if (root.name() != "Ardour") {
return -1;

View File

@@ -1174,7 +1174,7 @@ Region::get_state ()
}
int
Region::set_live_state (const XMLNode& node, int version, Change& what_changed, bool send)
Region::set_live_state (const XMLNode& node, int /*version*/, Change& what_changed, bool send)
{
const XMLNodeList& nlist = node.children();
const XMLProperty *prop;

View File

@@ -136,7 +136,7 @@ RouteGroup::get_state (void)
return *node;
}
int
int
RouteGroup::set_state (const XMLNode& node, int version)
{
if (version < 3000) {
@@ -161,14 +161,14 @@ RouteGroup::set_state (const XMLNode& node, int version)
}
int
RouteGroup::set_state_2X (const XMLNode& node, int version)
RouteGroup::set_state_2X (const XMLNode& node, int /*version*/)
{
XMLProperty const * prop;
if ((prop = node.property ("name")) != 0) {
_name = prop->value();
}
if ((prop = node.property ("flags")) != 0) {
_flags = Flag (string_2_enum (prop->value(), _flags));
}

View File

@@ -170,7 +170,7 @@ Session::GlobalRouteStateCommand::GlobalRouteStateCommand (Session& s, const XML
}
int
Session::GlobalRouteStateCommand::set_state (const XMLNode& node, int version)
Session::GlobalRouteStateCommand::set_state (const XMLNode& node, int /*version*/)
{
GlobalRouteBooleanState states;
XMLNodeList nlist;
@@ -483,7 +483,7 @@ Session::GlobalMeteringStateCommand::get_state()
}
int
Session::GlobalMeteringStateCommand::set_state (const XMLNode& node, int version)
Session::GlobalMeteringStateCommand::set_state (const XMLNode& node, int /*version*/)
{
GlobalRouteBooleanState states;
XMLNodeList nlist;

View File

@@ -76,7 +76,7 @@ SessionConfiguration::get_variables ()
int
SessionConfiguration::set_state (XMLNode const& root, int version)
SessionConfiguration::set_state (XMLNode const& root, int /*version*/)
{
if (root.name() != "Ardour") {
return -1;

View File

@@ -163,7 +163,7 @@ SessionMetadata::get_state ()
}
int
SessionMetadata::set_state (const XMLNode & state, int version)
SessionMetadata::set_state (const XMLNode & state, int /*version*/)
{
const XMLNodeList & children = state.children();
ustring name;

View File

@@ -110,7 +110,7 @@ Source::get_state ()
}
int
Source::set_state (const XMLNode& node, int version)
Source::set_state (const XMLNode& node, int /*version*/)
{
const XMLProperty* prop;

View File

@@ -1500,7 +1500,7 @@ TempoMap::get_state ()
}
int
TempoMap::set_state (const XMLNode& node, int version)
TempoMap::set_state (const XMLNode& node, int /*version*/)
{
{
Glib::RWLock::WriterLock lm (lock);

View File

@@ -24,7 +24,7 @@ ARDOUR::UserBundle::UserBundle (XMLNode const & node, bool i)
}
int
ARDOUR::UserBundle::set_state (XMLNode const & node, int version)
ARDOUR::UserBundle::set_state (XMLNode const & node, int /*version*/)
{
XMLProperty const * name;

View File

@@ -1,5 +1,5 @@
/*
Copyright (C) 2008 Hans Baier
Copyright (C) 2008 Hans Baier
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -61,7 +61,7 @@ void initialize_primary_key_from_commands (PatchPrimaryKey& id, const XMLNode* n
assert(control != "");
string value = node->property("Value")->value();
assert(value != "");
if (control == "0") {
id.msb = PBD::atoi(value);
} else if (control == "32") {
@@ -77,13 +77,13 @@ void initialize_primary_key_from_commands (PatchPrimaryKey& id, const XMLNode* n
int
Patch::set_state (const XMLNode& node, int version)
Patch::set_state (const XMLNode& node, int /*version*/)
{
assert(node.name() == "Patch");
_number = node.property("Number")->value();
_name = node.property("Name")->value();
XMLNode* commands = node.child("PatchMIDICommands");
if (commands) {
initialize_primary_key_from_commands(_id, commands);
} else {
@@ -101,7 +101,7 @@ Patch::set_state (const XMLNode& node, int version)
cerr << "deserialized Patch: name: " << _name << " msb: " << _id.msb << " lsb: " << _id.lsb << " program " << _id.program_number << endl;
// TODO: handle that more gracefully
assert(_id.is_sane());
return 0;
}
@@ -116,7 +116,7 @@ Note::get_state (void)
}
int
Note::set_state (const XMLNode& node, int version)
Note::set_state (const XMLNode& node, int /*version*/)
{
assert(node.name() == "Note");
_number = node.property("Number")->value();
@@ -147,7 +147,7 @@ NoteNameList::set_state (const XMLNode& node, int version)
note->set_state(*(*i), version);
_notes.push_back(note);
}
return 0;
}
@@ -178,7 +178,7 @@ PatchBank::set_state (const XMLNode& node, int version)
_id = new PatchPrimaryKey();
initialize_primary_key_from_commands(*_id, commands);
}
XMLNode* patch_name_list = node.child("PatchNameList");
assert(patch_name_list);
const XMLNodeList patches = patch_name_list->children();
@@ -187,7 +187,7 @@ PatchBank::set_state (const XMLNode& node, int version)
patch->set_state(*(*i), version);
_patch_name_list.push_back(patch);
}
return 0;
}
@@ -245,7 +245,7 @@ ChannelNameSet::set_state (const XMLNode& node, int version)
// cerr << "AvailableForChannels after insert" << endl;
}
}
// cerr << "before PatchBank" << endl;
if (node->name() == "PatchBank") {
@@ -263,19 +263,19 @@ ChannelNameSet::set_state (const XMLNode& node, int version)
// cerr << "after PatchBank pushback" << endl;
}
}
// cerr << "ChannelnameSet done" << endl;
return 0;
}
int
CustomDeviceMode::set_state(const XMLNode& a_node, int version)
CustomDeviceMode::set_state(const XMLNode& a_node, int /*version*/)
{
assert(a_node.name() == "CustomDeviceMode");
_name = a_node.property("Name")->value();
boost::shared_ptr<XMLSharedNodeList> channel_name_set_assignments =
a_node.find("//ChannelNameSetAssign");
for(XMLSharedNodeList::const_iterator i = channel_name_set_assignments->begin();
@@ -294,15 +294,15 @@ CustomDeviceMode::get_state(void)
{
XMLNode* custom_device_mode = new XMLNode("CustomDeviceMode");
custom_device_mode->add_property("Name", _name);
XMLNode* channel_name_set_assignments =
XMLNode* channel_name_set_assignments =
custom_device_mode->add_child("ChannelNameSetAssignments");
for (int i = 0; i < 15 && !_channel_name_set_assignments[i].empty(); i++) {
XMLNode* channel_name_set_assign =
XMLNode* channel_name_set_assign =
channel_name_set_assignments->add_child("ChannelNameSetAssign");
channel_name_set_assign->add_property("Channel", i + 1);
channel_name_set_assign->add_property("NameSet", _channel_name_set_assignments[i]);
}
return *custom_device_mode;
}
@@ -337,7 +337,7 @@ MasterDeviceNames::set_state(const XMLNode& a_node, int version)
++i) {
boost::shared_ptr<CustomDeviceMode> custom_device_mode(new CustomDeviceMode());
custom_device_mode->set_state(*(*i), version);
_custom_device_modes[custom_device_mode->name()] = custom_device_mode;
_custom_device_mode_names.push_back(custom_device_mode->name());
}
@@ -376,9 +376,9 @@ MasterDeviceNames::get_state(void)
}
MIDINameDocument::MIDINameDocument (const string& filename)
: _document(XMLTree(filename))
{
set_state(*_document.root(), 0);
: _document(XMLTree(filename))
{
set_state(*_document.root(), 0);
}
int
@@ -388,7 +388,7 @@ MIDINameDocument::set_state(const XMLNode& a_node, int version)
boost::shared_ptr<XMLSharedNodeList> author = a_node.find("//Author");
assert(author->size() == 1);
_author = author->front()->content();
// cerr << "MIDINameDocument::set_state befor masterdevicenames" << endl;
// MasterDeviceNames
boost::shared_ptr<XMLSharedNodeList> master_device_names_list = a_node.find("//MasterDeviceNames");
@@ -399,7 +399,7 @@ MIDINameDocument::set_state(const XMLNode& a_node, int version)
// cerr << "MIDINameDocument::set_state before masterdevicenames->set_state" << endl;
master_device_names->set_state(*(*i), version);
// cerr << "MIDINameDocument::set_state after masterdevicenames->set_state" << endl;
for (MasterDeviceNames::Models::const_iterator model = master_device_names->models().begin();
model != master_device_names->models().end();
++model) {
@@ -407,11 +407,11 @@ MIDINameDocument::set_state(const XMLNode& a_node, int version)
_master_device_names_list.insert(
std::pair<std::string, boost::shared_ptr<MasterDeviceNames> >
(*model, master_device_names));
_all_models.push_back(*model);
}
}
return 0;
}

View File

@@ -105,7 +105,7 @@ Controllable::get_state ()
}
int
Controllable::set_state (const XMLNode& node, int version)
Controllable::set_state (const XMLNode& node, int /*version*/)
{
const XMLProperty* prop = node.property (X_("id"));

View File

@@ -1,6 +1,6 @@
/*
Copyright (C) 1998-2006 Paul Davis
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
@@ -42,7 +42,7 @@ MIDIControllable::MIDIControllable (Port& p, Controllable& c, bool is_bistate)
control_additional = (byte) -1;
connections = 0;
feedback = true; // for now
/* use channel 0 ("1") as the initial channel */
midi_rebind (0);
@@ -59,18 +59,18 @@ MIDIControllable::midi_forget ()
/* stop listening for incoming messages, but retain
our existing event + type information.
*/
if (connections > 0) {
midi_sense_connection[0].disconnect ();
}
}
if (connections > 1) {
midi_sense_connection[1].disconnect ();
}
connections = 0;
midi_learn_connection.disconnect ();
}
void
@@ -101,7 +101,7 @@ MIDIControllable::drop_external_control ()
{
if (connections > 0) {
midi_sense_connection[0].disconnect ();
}
}
if (connections > 1) {
midi_sense_connection[1].disconnect ();
}
@@ -147,14 +147,14 @@ MIDIControllable::midi_to_control(float val)
return val / midi_range * control_range + control_min;
}
void
MIDIControllable::midi_sense_note_on (Parser &p, EventTwoBytes *tb)
void
MIDIControllable::midi_sense_note_on (Parser &p, EventTwoBytes *tb)
{
midi_sense_note (p, tb, true);
}
void
MIDIControllable::midi_sense_note_off (Parser &p, EventTwoBytes *tb)
void
MIDIControllable::midi_sense_note_off (Parser &p, EventTwoBytes *tb)
{
midi_sense_note (p, tb, false);
}
@@ -168,7 +168,7 @@ MIDIControllable::midi_sense_note (Parser &, EventTwoBytes *msg, bool is_on)
/* Note: parser handles the use of zero velocity to
mean note off. if we get called with is_on=true, then we
got a *real* note on.
got a *real* note on.
*/
if (msg->note_number == control_additional) {
@@ -209,7 +209,7 @@ MIDIControllable::midi_sense_program_change (Parser &, byte msg)
if (!bistate) {
controllable.set_value (msg/127.0);
last_value = (MIDI::byte) (controllable.get_value() * 127.0); // to prevent feedback fights
}
}
}
void
@@ -221,7 +221,7 @@ MIDIControllable::midi_sense_pitchbend (Parser &, pitchbend_t pb)
controllable.set_value ((pb/(float) SHRT_MAX));
last_value = (MIDI::byte) (controllable.get_value() * 127.0); // to prevent feedback fights
}
}
void
MIDIControllable::midi_receiver (Parser &, byte *msg, size_t /*len*/)
@@ -257,7 +257,7 @@ MIDIControllable::bind_midi (channel_t chn, eventType ev, MIDI::byte additional)
if (_port.input() == 0) {
return;
}
Parser& p = *_port.input();
int chn_i = chn;
@@ -284,7 +284,7 @@ MIDIControllable::bind_midi (channel_t chn, eventType ev, MIDI::byte additional)
midi_sense_connection[0] = p.channel_note_on[chn_i].connect
(mem_fun (*this, &MIDIControllable::midi_sense_note_on));
if (bistate) {
midi_sense_connection[1] = p.channel_note_off[chn_i].connect
midi_sense_connection[1] = p.channel_note_off[chn_i].connect
(mem_fun (*this, &MIDIControllable::midi_sense_note_off));
connections = 2;
} else {
@@ -294,7 +294,7 @@ MIDIControllable::bind_midi (channel_t chn, eventType ev, MIDI::byte additional)
break;
case MIDI::controller:
midi_sense_connection[0] = p.channel_controller[chn_i].connect
midi_sense_connection[0] = p.channel_controller[chn_i].connect
(mem_fun (*this, &MIDIControllable::midi_sense_controller));
connections = 1;
snprintf (buf, sizeof (buf), "MIDI control: Controller %d", control_additional);
@@ -304,7 +304,7 @@ MIDIControllable::bind_midi (channel_t chn, eventType ev, MIDI::byte additional)
case MIDI::program:
if (!bistate) {
midi_sense_connection[0] = p.channel_program_change[chn_i].connect
(mem_fun (*this,
(mem_fun (*this,
&MIDIControllable::midi_sense_program_change));
connections = 1;
_control_description = "MIDI control: ProgramChange";
@@ -334,7 +334,7 @@ MIDIControllable::send_feedback ()
return;
}
msg[0] = (control_type & 0xF0) | (control_channel & 0xF);
msg[0] = (control_type & 0xF0) | (control_channel & 0xF);
msg[1] = control_additional;
msg[2] = (byte) (control_to_midi(controllable.get_value()));
@@ -345,9 +345,9 @@ MIDI::byte*
MIDIControllable::write_feedback (MIDI::byte* buf, int32_t& bufsize, bool /*force*/)
{
if (control_type != none && feedback && bufsize > 2) {
MIDI::byte gm = (MIDI::byte) (control_to_midi(controllable.get_value()));
if (gm != last_value) {
*buf++ = (0xF0 & control_type) | (0xF & control_channel);
*buf++ = control_additional; /* controller number */
@@ -356,12 +356,12 @@ MIDIControllable::write_feedback (MIDI::byte* buf, int32_t& bufsize, bool /*forc
bufsize -= 3;
}
}
return buf;
}
int
MIDIControllable::set_state (const XMLNode& node, int version)
int
MIDIControllable::set_state (const XMLNode& node, int /*version*/)
{
const XMLProperty* prop;
int xx;
@@ -394,7 +394,7 @@ MIDIControllable::set_state (const XMLNode& node, int version)
}
bind_midi (control_channel, control_type, control_additional);
return 0;
}

View File

@@ -187,7 +187,7 @@ MackiePort & MackieControlProtocol::port_for_id( uint32_t index )
current_max += (*it)->strips();
if ( index < current_max ) return **it;
}
// oops - no matching port
ostringstream os;
os << "No port for index " << index;
@@ -216,15 +216,15 @@ struct RouteByRemoteId
MackieControlProtocol::Sorted MackieControlProtocol::get_sorted_routes()
{
Sorted sorted;
// fetch all routes
boost::shared_ptr<RouteList> routes = session->get_routes();
set<uint32_t> remote_ids;
// routes with remote_id 0 should never be added
// TODO verify this with ardour devs
// remote_ids.insert( 0 );
// sort in remote_id order, and exclude master, control and hidden routes
// and any routes that are already set.
for (RouteList::iterator it = routes->begin(); it != routes->end(); ++it )
@@ -255,7 +255,7 @@ void MackieControlProtocol::switch_banks( int initial )
{
// DON'T prevent bank switch if initial == _current_initial_bank
// because then this method can't be used as a refresh
// sanity checking
Sorted sorted = get_sorted_routes();
int delta = sorted.size() - route_table.size();
@@ -267,11 +267,11 @@ void MackieControlProtocol::switch_banks( int initial )
return;
}
_current_initial_bank = initial;
// first clear the signals from old routes
// taken care of by the RouteSignal destructors
clear_route_signals();
// now set the signals for new routes
if ( _current_initial_bank <= sorted.size() )
{
@@ -282,7 +282,7 @@ void MackieControlProtocol::switch_banks( int initial )
#ifdef DEBUG
cout << "switch to " << _current_initial_bank << ", " << end_pos << endl;
#endif
// link routes to strips
uint32_t i = 0;
for ( ; it != end && it != sorted.end(); ++it, ++i )
@@ -298,7 +298,7 @@ void MackieControlProtocol::switch_banks( int initial )
// update strip from route
rs->notify_all();
}
// create dead strips if there aren't enough routes to
// fill a bank
for ( ; i < route_table.size(); ++i )
@@ -309,7 +309,7 @@ void MackieControlProtocol::switch_banks( int initial )
port.write( builder.zero_strip( port, strip ) );
}
}
// display the current start bank.
surface().display_bank_start( mcu_port(), builder, _current_initial_bank );
}
@@ -317,17 +317,17 @@ void MackieControlProtocol::switch_banks( int initial )
void MackieControlProtocol::zero_all()
{
// TODO turn off SMPTE displays
// zero all strips
for ( Surface::Strips::iterator it = surface().strips.begin(); it != surface().strips.end(); ++it )
{
MackiePort & port = port_for_id( (*it)->index() );
port.write( builder.zero_strip( port, **it ) );
}
// and the master strip
mcu_port().write( builder.zero_strip( dynamic_cast<MackiePort&>( mcu_port() ), master_strip() ) );
// turn off global buttons and leds
// global buttons are only ever on mcu_port, so we don't have
// to figure out which port.
@@ -355,29 +355,29 @@ int MackieControlProtocol::set_active( bool yn )
if ( yn )
{
// TODO what happens if this fails half way?
// create MackiePorts
{
Glib::Mutex::Lock lock( update_mutex );
create_ports();
}
// make sure the ports are being listened to
update_ports();
// wait until poll thread is running, with ports to poll
// the mutex is only there because conditions require a mutex
{
Glib::Mutex::Lock lock( update_mutex );
while ( nfds == 0 ) update_cond.wait( update_mutex );
}
// now initialise MackiePorts - ie exchange sysex messages
for( MackiePorts::iterator it = _ports.begin(); it != _ports.end(); ++it )
{
(*it)->open();
}
// wait until all ports are active
// TODO a more sophisticated approach would
// allow things to start up with only an MCU, even if
@@ -386,15 +386,15 @@ int MackieControlProtocol::set_active( bool yn )
{
(*it)->wait_for_init();
}
// create surface object. This depends on the ports being
// correctly initialised
initialize_surface();
connect_session_signals();
// yeehah!
_active = true;
// send current control positions to surface
// must come after _active = true otherwise it won't run
update_surface();
@@ -450,13 +450,13 @@ bool MackieControlProtocol::handle_strip_button( Control & control, ButtonState
//state = default_button_press( dynamic_cast<Button&>( control ) );
}
}
if ( control.name() == "fader_touch" )
{
state = bs == press;
control.strip().gain().in_use( state );
}
return state;
}
@@ -541,7 +541,7 @@ void MackieControlProtocol::update_surface()
// do the initial bank switch to connect signals
// _current_initial_bank is initialised by set_state
switch_banks( _current_initial_bank );
// create a RouteSignal for the master route
boost::shared_ptr<Route> mr = master_route ();
@@ -550,10 +550,10 @@ void MackieControlProtocol::update_surface()
// update strip from route
master_route_signal->notify_all();
}
// sometimes the jog wheel is a pot
surface().blank_jog_ring( mcu_port(), builder );
// update global buttons and displays
notify_record_state_changed();
notify_transport_state_changed();
@@ -574,7 +574,7 @@ void MackieControlProtocol::connect_session_signals()
session->config.ParameterChanged.connect ( ( mem_fun (*this, &MackieControlProtocol::notify_parameter_changed) ) );
// receive rude solo changed
connections_back = session->SoloActive.connect( ( mem_fun (*this, &MackieControlProtocol::notify_solo_active_changed) ) );
// make sure remote id changed signals reach here
// see also notify_route_added
Sorted sorted = get_sorted_routes();
@@ -603,7 +603,7 @@ void MackieControlProtocol::add_port( MIDI::Port & midi_port, int number )
{
MackiePort * sport = new MackiePort( *this, midi_port, number );
_ports.push_back( sport );
connections_back = sport->init_event.connect(
sigc::bind (
mem_fun (*this, &MackieControlProtocol::handle_port_init)
@@ -624,7 +624,7 @@ void MackieControlProtocol::add_port( MIDI::Port & midi_port, int number )
, sport
)
);
_ports_changed = true;
}
}
@@ -645,7 +645,7 @@ void MackieControlProtocol::create_ports()
}
add_port( *midi_port, 0 );
}
// open extender ports. Up to 9. Should be enough.
// could also use mm->get_midi_ports()
string ext_port_base = "mcu_xt_";
@@ -676,9 +676,9 @@ void MackieControlProtocol::initialize_surface()
{
strips += (*it)->strips();
}
set_route_table_size( strips );
// TODO same as code in mackie_port.cc
string emulation = ARDOUR::Config->get_mackie_emulation();
if ( emulation == "bcf" )
@@ -697,7 +697,7 @@ void MackieControlProtocol::initialize_surface()
}
_surface->init();
// Connect events. Must be after route table otherwise there will be trouble
for( MackiePorts::iterator it = _ports.begin(); it != _ports.end(); ++it )
{
@@ -712,10 +712,10 @@ void MackieControlProtocol::close()
// calls methods on objects that are deleted
_polling = false;
pthread_join( thread, 0 );
// TODO disconnect port active/inactive signals
// Or at least put a lock here
// disconnect global signals from Session
// TODO Since *this is a sigc::trackable, this shouldn't be necessary
// but it is for some reason
@@ -725,7 +725,7 @@ void MackieControlProtocol::close()
it->disconnect();
}
#endif
if ( _surface != 0 )
{
// These will fail if the port has gone away.
@@ -742,7 +742,7 @@ void MackieControlProtocol::close()
cout << "MackieControlProtocol::close caught exception: " << e.what() << endl;
#endif
}
for( MackiePorts::iterator it = _ports.begin(); it != _ports.end(); ++it )
{
try
@@ -762,21 +762,21 @@ void MackieControlProtocol::close()
#endif
}
}
// disconnect routes from strips
clear_route_signals();
delete _surface;
_surface = 0;
}
// shut down MackiePorts
for( MackiePorts::iterator it = _ports.begin(); it != _ports.end(); ++it )
{
delete *it;
}
_ports.clear();
// this is done already in monitor_work. But it's here so we know.
delete[] pfd;
pfd = 0;
@@ -793,26 +793,26 @@ XMLNode & MackieControlProtocol::get_state()
#ifdef DEBUG
cout << "MackieControlProtocol::get_state" << endl;
#endif
// add name of protocol
XMLNode* node = new XMLNode( X_("Protocol") );
node->add_property( X_("name"), _name );
// add current bank
ostringstream os;
os << _current_initial_bank;
node->add_property( X_("bank"), os.str() );
return *node;
}
int MackieControlProtocol::set_state (const XMLNode & node, int version)
int MackieControlProtocol::set_state (const XMLNode & node, int /*version*/)
{
#ifdef DEBUG
cout << "MackieControlProtocol::set_state: active " << _active << endl;
#endif
int retval = 0;
// fetch current bank
if ( node.property( X_("bank") ) != 0 )
{
@@ -831,7 +831,7 @@ int MackieControlProtocol::set_state (const XMLNode & node, int version)
return -1;
}
}
return retval;
}
@@ -854,7 +854,7 @@ void MackieControlProtocol::handle_control_event( SurfacePort & port, Control &
cerr << "Warning: index is " << index << " which is not in the route table, size: " << route_table.size() << endl;
}
}
// This handles control element events from the surface
// the state of the controls on the surface is usually updated
// from UI events.
@@ -867,14 +867,14 @@ void MackieControlProtocol::handle_control_event( SurfacePort & port, Control &
if ( route != 0 )
{
route->gain_control()->set_value( state.pos );
// must echo bytes back to slider now, because
// the notifier only works if the fader is not being
// touched. Which it is if we're getting input.
port.write( builder.build_fader( (Fader&)control, state.pos ) );
}
break;
case Control::type_button:
if ( control.group().is_strip() )
{
@@ -904,7 +904,7 @@ void MackieControlProtocol::handle_control_event( SurfacePort & port, Control &
surface().handle_button( *this, state.button_state, dynamic_cast<Button&>( control ) );
}
break;
// pot (jog wheel, external control)
case Control::type_pot:
if ( control.group().is_strip() )
@@ -917,14 +917,14 @@ void MackieControlProtocol::handle_control_event( SurfacePort & port, Control &
// assume pan for now
float xpos;
route->panner()->streampanner (0).get_effective_position (xpos);
// calculate new value, and trim
xpos += state.delta * state.sign;
if ( xpos > 1.0 )
xpos = 1.0;
else if ( xpos < 0.0 )
xpos = 0.0;
route->panner()->streampanner (0).set_position( xpos );
}
}
@@ -946,7 +946,7 @@ void MackieControlProtocol::handle_control_event( SurfacePort & port, Control &
}
}
break;
default:
cout << "Control::type not handled: " << control.type() << endl;
}
@@ -1012,7 +1012,7 @@ void MackieControlProtocol::notify_active_changed (RouteSignal *)
cout << e.what() << endl;
}
}
void MackieControlProtocol::notify_gain_changed( RouteSignal * route_signal, bool force_update )
{
try
@@ -1044,7 +1044,7 @@ void MackieControlProtocol::notify_name_changed( RouteSignal * route_signal )
{
string line1;
string fullname = route_signal->route()->name();
if ( fullname.length() <= 6 )
{
line1 = fullname;
@@ -1053,7 +1053,7 @@ void MackieControlProtocol::notify_name_changed( RouteSignal * route_signal )
{
line1 = PBD::short_version( fullname, 6 );
}
SurfacePort & port = route_signal->port();
port.write( builder.strip_display( port, strip, 0, line1 ) );
port.write( builder.strip_display_blank( port, strip, 1 ) );
@@ -1075,7 +1075,7 @@ void MackieControlProtocol::notify_panner_changed( RouteSignal * route_signal, b
{
float pos;
route_signal->route()->panner()->streampanner(0).get_effective_position( pos );
// cache the MidiByteArray here, because the mackie led control is much lower
// resolution than the panner control. So we save lots of byte
// sends in spite of more work on the comparison
@@ -1106,7 +1106,7 @@ void MackieControlProtocol::update_automation( RouteSignal & rs )
{
notify_gain_changed( &rs, false );
}
if ( rs.route()->panner() ) {
ARDOUR::AutoState panner_state = rs.route()->panner()->automation_state();
if ( panner_state == Touch || panner_state == Play )
@@ -1121,14 +1121,14 @@ string MackieControlProtocol::format_bbt_timecode( nframes_t now_frame )
{
BBT_Time bbt_time;
session->bbt_time( now_frame, bbt_time );
// According to the Logic docs
// digits: 888/88/88/888
// BBT mode: Bars/Beats/Subdivisions/Ticks
ostringstream os;
os << setw(3) << setfill('0') << bbt_time.bars;
os << setw(2) << setfill('0') << bbt_time.beats;
// figure out subdivisions per beat
const Meter & meter = session->tempo_map().meter_at( now_frame );
int subdiv = 2;
@@ -1136,13 +1136,13 @@ string MackieControlProtocol::format_bbt_timecode( nframes_t now_frame )
{
subdiv = 3;
}
uint32_t subdivisions = bbt_time.ticks / uint32_t( Meter::ticks_per_beat / subdiv );
uint32_t ticks = bbt_time.ticks % uint32_t( Meter::ticks_per_beat / subdiv );
os << setw(2) << setfill('0') << subdivisions + 1;
os << setw(3) << setfill('0') << ticks;
return os.str();
}
@@ -1159,7 +1159,7 @@ string MackieControlProtocol::format_smpte_timecode( nframes_t now_frame )
os << setw(2) << setfill('0') << smpte.minutes;
os << setw(2) << setfill('0') << smpte.seconds;
os << setw(3) << setfill('0') << smpte.frames;
return os.str();
}
@@ -1170,7 +1170,7 @@ void MackieControlProtocol::update_timecode_display()
// do assignment here so current_frame is fixed
nframes_t current_frame = session->transport_frame();
string timecode;
switch ( _timecode_type )
{
case ARDOUR::AnyTime::BBT:
@@ -1183,8 +1183,8 @@ void MackieControlProtocol::update_timecode_display()
ostringstream os;
os << "Unknown timecode: " << _timecode_type;
throw runtime_error( os.str() );
}
}
// only write the timecode string to the MCU if it's changed
// since last time. This is to reduce midi bandwidth used.
if ( timecode != _timecode_last )
@@ -1204,15 +1204,15 @@ void MackieControlProtocol::poll_session_data()
{
update_automation( **it );
}
// and the master strip
if ( master_route_signal != 0 )
{
update_automation( *master_route_signal );
}
update_timecode_display();
_automation_last.start();
}
}
@@ -1225,12 +1225,12 @@ LedState MackieControlProtocol::frm_left_press (Button &)
{
// can use first_mark_before/after as well
unsigned long elapsed = _frm_left_last.restart();
Location * loc = session->locations()->first_location_before (
session->transport_frame()
);
// allow a quick double to go past a previous mark
// allow a quick double to go past a previous mark
if ( session->transport_rolling() && elapsed < 500 && loc != 0 )
{
Location * loc_two_back = session->locations()->first_location_before ( loc->start() );
@@ -1239,13 +1239,13 @@ LedState MackieControlProtocol::frm_left_press (Button &)
loc = loc_two_back;
}
}
// move to the location, if it's valid
if ( loc != 0 )
{
session->request_locate( loc->start(), session->transport_rolling() );
}
return on;
}
@@ -1468,7 +1468,7 @@ void MackieControlProtocol::notify_route_added( ARDOUR::RouteList & rl )
refresh_current_bank();
}
// otherwise route added, but current bank needs no updating
// make sure remote id changes in the new route are handled
typedef ARDOUR::RouteList ARS;
for ( ARS::iterator it = rl.begin(); it != rl.end(); ++it )
@@ -1486,7 +1486,7 @@ void MackieControlProtocol::notify_solo_active_changed( bool active )
void MackieControlProtocol::notify_remote_id_changed()
{
Sorted sorted = get_sorted_routes();
// if a remote id has been moved off the end, we need to shift
// the current bank backwards.
if ( sorted.size() - _current_initial_bank < route_signals.size() )
@@ -1518,9 +1518,9 @@ void MackieControlProtocol::notify_transport_state_changed()
update_global_button( "play", session->transport_rolling() );
update_global_button( "stop", !session->transport_rolling() );
update_global_button( "loop", session->get_play_loop() );
_transport_previously_rolling = session->transport_rolling();
// rec is special because it's tristate
Button * rec = reinterpret_cast<Button*>( surface().controls_by_name["record"] );
mcu_port().write( builder.build_led( *rec, record_release( *rec ) ) );
@@ -1541,7 +1541,7 @@ LedState MackieControlProtocol::left_press (Button &)
session->set_dirty();
switch_banks( new_initial );
}
return on;
}
else
@@ -1567,7 +1567,7 @@ LedState MackieControlProtocol::right_press (Button &)
session->set_dirty();
switch_banks( _current_initial_bank + delta );
}
return on;
}
else