root/trunk/libffado/src/bebob/GenericMixer.h

Revision 451, 1.7 kB (checked in by ppalmers, 15 years ago)

- First attempt at a OSC controlled mixer. The level of

abstraction is very low, meaning that you have to know
how the function blocks work. It however allows control
applications to be written and to experiment with them.

- This version only does Selector function blocks.

The following message switches the phase88 input to the

  • front (or is is back?)
    /devicemanager/dev0/GenericMixer set selector 10 0
  • back (or is it front?)
    /devicemanager/dev0/GenericMixer set selector 10 1

Line 
1 /*
2  * Copyright (C) 2007 by Pieter Palmers
3  *
4  * This file is part of FFADO
5  * FFADO = Free Firewire (pro-)audio drivers for linux
6  *
7  * FFADO is based upon FreeBoB
8  *
9  * This library is free software; you can redistribute it and/or
10  * modify it under the terms of the GNU Lesser General Public
11  * License version 2.1, as published by the Free Software Foundation;
12  *
13  * This library is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16  * Lesser General Public License for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public
19  * License along with this library; if not, write to the Free Software
20  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
21  * MA 02110-1301 USA
22  */
23
24 #ifndef __FFAD0_GENERICMIXER__
25 #define __FFAD0_GENERICMIXER__
26
27 #include "src/debugmodule/debugmodule.h"
28
29 #include "libosc/OscNode.h"
30
31 #include "libieee1394/ieee1394service.h"
32 #include "libieee1394/configrom.h"
33
34 namespace BeBoB {
35 class AvDevice;
36
37 class GenericMixer
38     : public OSC::OscNode {
39
40 public:
41
42     GenericMixer(
43         Ieee1394Service& ieee1394service,
44         AvDevice &d);
45     virtual ~GenericMixer();
46
47     virtual OSC::OscResponse processOscMessage(OSC::OscMessage *m);
48
49 protected:
50     OSC::OscMessage mixerListChildren();
51     OSC::OscResponse mixerGetSelectorValue(int id);
52     OSC::OscResponse mixerSetSelectorValue(int id, int value);
53 protected:
54     Ieee1394Service      &m_p1394Service;
55     AvDevice             &m_device;
56
57 protected:
58     DECLARE_DEBUG_MODULE;
59
60 };
61
62 } // end of namespace BeBoB
63
64 #endif /* __FFAD0_GENERICMIXER__ */
65
66
Note: See TracBrowser for help on using the browser.