-std::ostream & Mackie::operator << (std::ostream & os, const Strip & strip)
-{
- os << typeid (strip).name();
- os << " { ";
- os << "has_solo: " << boolalpha << strip.has_solo();
- os << ", ";
- os << "has_recenable: " << boolalpha << strip.has_recenable();
- os << ", ";
- os << "has_mute: " << boolalpha << strip.has_mute();
- os << ", ";
- os << "has_select: " << boolalpha << strip.has_select();
- os << ", ";
- os << "has_vselect: " << boolalpha << strip.has_vselect();
- os << ", ";
- os << "has_fader_touch: " << boolalpha << strip.has_fader_touch();
- os << ", ";
- os << "has_vpot: " << boolalpha << strip.has_vpot();
- os << ", ";
- os << "has_gain: " << boolalpha << strip.has_gain();
- os << " }";
-
- return os;
-}
-
-Control*
-Button::factory (Surface& surface, int id, int ordinal, const char* name, Group& group)
-{
- Button* b = new Button (id, ordinal, name, group);
- surface.buttons[id] = b;
- surface.controls.push_back (b);
- group.add (*b);
- return b;
-}
-
-Control*
-Fader::factory (Surface& surface, int id, int ordinal, const char* name, Group& group)
-{
- Fader* f = new Fader (id, ordinal, name, group);
- surface.faders[id] = f;
- surface.controls.push_back (f);
- group.add (*f);
- return f;
-}
-
-Control*
-Pot::factory (Surface& surface, int id, int ordinal, const char* name, Group& group)
-{
- Pot* p = new Pot (id, ordinal, name, group);
- surface.pots[id] = p;
- surface.controls.push_back (p);
- group.add (*p);
- return p;
-}
-
-Control*
-Led::factory (Surface& surface, int id, int ordinal, const char* name, Group& group)
-{
- Led* l = new Led (id, ordinal, name, group);
- surface.leds[id] = l;
- surface.controls.push_back (l);
- group.add (*l);
- return l;
-}
-
-Control*
-Jog::factory (Surface& surface, int id, int ordinal, const char* name, Group& group)
-{
- Jog* j = new Jog (id, ordinal, name, group);
- surface.controls.push_back (j);
- surface.controls_by_name["jog"] = j;
- group.add (*j);
- return j;
-}
-
-Control*
-Meter::factory (Surface& surface, int id, int ordinal, const char* name, Group& group)
-{
- Meter* m = new Meter (id, ordinal, name, group);
- surface.meters[id] = m;
- surface.controls.push_back (m);
- group.add (*m);
- return m;
-}