root/branches/ppalmers-streaming/src/libstreaming/motu/MotuPort.h

Revision 705, 2.5 kB (checked in by ppalmers, 13 years ago)

restructure the streaming directory

Line 
1 /*
2  * Copyright (C) 2005-2007 by Jonathan Woithe
3  * Copyright (C) 2005-2007 by Pieter Palmers
4  *
5  * This file is part of FFADO
6  * FFADO = Free Firewire (pro-)audio drivers for linux
7  *
8  * FFADO is based upon FreeBoB.
9  *
10  * This library is free software; you can redistribute it and/or
11  * modify it under the terms of the GNU Lesser General Public
12  * License version 2.1, as published by the Free Software Foundation;
13  *
14  * This library is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17  * Lesser General Public License for more details.
18  *
19  * You should have received a copy of the GNU Lesser General Public
20  * License along with this library; if not, write to the Free Software
21  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
22  * MA 02110-1301 USA
23  */
24
25 #ifndef __FFADO_MOTUPORT__
26 #define __FFADO_MOTUPORT__
27
28 /**
29  * This file implements the ports used in Motu devices
30  */
31
32 #include "MotuPortInfo.h"
33 #include "../generic/Port.h"
34
35 #include "debugmodule/debugmodule.h"
36
37 namespace Streaming {
38
39 /*!
40 \brief The Base Class for Motu Audio Port
41
42
43 */
44 class MotuAudioPort
45     : public AudioPort, public MotuPortInfo
46 {
47
48 public:
49
50     MotuAudioPort(std::string name,
51                        enum E_Direction direction,
52                    int position,
53                    int size)
54     : AudioPort(name, direction),
55       MotuPortInfo( position, size) // TODO: add more port information parameters here if nescessary
56     {};
57
58     virtual ~MotuAudioPort() {};
59
60 protected:
61
62 };
63
64 /*!
65 \brief The Base Class for an Motu Midi Port
66
67
68 */
69 class MotuMidiPort
70     : public MidiPort, public MotuPortInfo
71 {
72
73 public:
74
75     MotuMidiPort(std::string name,
76                        enum E_Direction direction,
77                    int position)
78         : MidiPort(name, direction),
79           MotuPortInfo(position, 0)  // TODO: add more port information parameters here if nescessary
80     {};
81
82
83     virtual ~MotuMidiPort() {};
84
85 protected:
86
87 };
88
89 /*!
90 \brief The Base Class for an Motu Control Port
91
92
93 */
94 class MotuControlPort
95     : public ControlPort, public MotuPortInfo
96 {
97
98 public:
99
100     MotuControlPort(std::string name,
101                        enum E_Direction direction,
102                    int position)
103         : ControlPort(name, direction),
104           MotuPortInfo(position, 2) // TODO: add more port information parameters here if nescessary
105     {};
106
107
108     virtual ~MotuControlPort() {};
109
110 protected:
111
112 };
113
114 } // end of namespace Streaming
115
116 #endif /* __FFADO_MOTUPORT__ */
117
Note: See TracBrowser for help on using the browser.