1
1
//=========================================================
3
3
// Linux Music Editor
4
// $Id: mididev.h,v 1.2 2001/11/20 15:19:32 muse Exp $
4
// $Id: mididev.h,v 1.1.1.1 2003/10/29 10:06:13 wschweer Exp $
6
6
// (C) Copyright 2000 Werner Schweer (ws@seh.de)
7
7
//=========================================================
9
9
#ifndef __MIDIDEV_H__
10
10
#define __MIDIDEV_H__
17
17
//---------------------------------------------------------
19
19
//---------------------------------------------------------
21
class MidiDevice : public Device {
23
23
int _rwFlags; // 1 read, 2 write, 3 rw
30
32
MidiDevice(const QString& name);
31
34
virtual ~MidiDevice();
32
36
virtual QString open(int) = 0;
33
37
virtual void close() = 0;
39
const QString& name() const { return _name; }
40
void setName(const QString& s) { _name = s; }
42
int port() const { return _port; }
43
void setPort(int p) { _port = p; }
35
45
int rwFlags() const;
36
46
void setrwFlags(int val);
38
virtual int selectRfd() { return -1; }
39
virtual int selectWfd() { return -1; }
40
virtual int bytesToWrite() { return 0; }
41
virtual void flush() {}
42
virtual void processInput() {}
43
virtual void discardInput() {}
48
virtual int selectRfd() { return -1; }
49
virtual int selectWfd() { return -1; }
50
virtual int bytesToWrite() { return 0; }
51
virtual void flush() {}
52
virtual void processInput() {}
53
virtual void discardInput() {}
44
54
virtual void putClock() = 0;
45
55
virtual void putStart() = 0;
46
56
virtual void putStop() = 0;
47
57
virtual void putContinue() = 0;
48
58
virtual void putSongpos(int) = 0;
50
virtual void putEvent(const MidiEvent*) = 0;
60
virtual void putEvent(const MidiPlayEvent*) = 0;
52
62
void setMasterVol(int val);
53
63
int masterVol() const { return _masterVol; }