summaryrefslogtreecommitdiff
path: root/libs/surfaces/mackie/mackie_midi_builder.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2012-04-09 00:03:58 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2012-04-09 00:03:58 +0000
commit7ab25511b541190ae2d9b1dc957507effa59cb35 (patch)
tree3eb5b9367285da290a066b99a1e191843abf5039 /libs/surfaces/mackie/mackie_midi_builder.cc
parent89aed48f92a673f5bd3f5129602fcff9ecbed103 (diff)
MCP: possible support for metering (really)
git-svn-id: svn://localhost/ardour2/branches/3.0@11843 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/surfaces/mackie/mackie_midi_builder.cc')
-rw-r--r--libs/surfaces/mackie/mackie_midi_builder.cc36
1 files changed, 19 insertions, 17 deletions
diff --git a/libs/surfaces/mackie/mackie_midi_builder.cc b/libs/surfaces/mackie/mackie_midi_builder.cc
index 59d9740821..b50d50bb01 100644
--- a/libs/surfaces/mackie/mackie_midi_builder.cc
+++ b/libs/surfaces/mackie/mackie_midi_builder.cc
@@ -112,7 +112,7 @@ MidiByteArray MackieMidiBuilder::build_fader( const Fader & fader, float pos )
MidiByteArray MackieMidiBuilder::build_meter (const Meter & meter, float val)
{
MIDI::byte segment = lrintf (val*16.0);
-
+
return MidiByteArray (2,
0xD0,
(meter.raw_id()<<3) | segment);
@@ -142,27 +142,29 @@ MidiByteArray MackieMidiBuilder::zero_strip( SurfacePort & port, const Strip & s
MidiByteArray MackieMidiBuilder::zero_control( const Control & control )
{
- switch( control.type() )
- {
- case Control::type_button:
- return build_led( (Button&)control, off );
+ switch( control.type() ) {
+ case Control::type_button:
+ return build_led( (Button&)control, off );
+
+ case Control::type_led:
+ return build_led( (Led&)control, off );
- case Control::type_led:
- return build_led( (Led&)control, off );
+ case Control::type_fader:
+ return build_fader( (Fader&)control, 0.0 );
- case Control::type_fader:
- return build_fader( (Fader&)control, 0.0 );
+ case Control::type_pot:
+ return build_led_ring( dynamic_cast<const Pot&>( control ), off );
- case Control::type_pot:
- return build_led_ring( dynamic_cast<const Pot&>( control ), off );
+ case Control::type_led_ring:
+ return build_led_ring( dynamic_cast<const LedRing&>( control ), off );
- case Control::type_led_ring:
- return build_led_ring( dynamic_cast<const LedRing&>( control ), off );
+ case Control::type_meter:
+ return build_meter (dynamic_cast<const Meter&>(control), 0.0);
- default:
- ostringstream os;
- os << "Unknown control type " << control << " in Strip::zero_control";
- throw MackieControlException( os.str() );
+ default:
+ ostringstream os;
+ os << "Unknown control type " << control << " in Strip::zero_control";
+ throw MackieControlException( os.str() );
}
}