AlsaOut Class Reference
Sends MIDI events to a MIDI devices using ALSA. More...
#include <alsaout.h>
Inheritance diagram for AlsaOut:


Public Member Functions | |
| AlsaOut (int d, int client=64, int port=0, const char *cname="", const char *pname="") | |
| virtual | ~AlsaOut () |
| virtual void | openDev (int sqfd) |
| virtual void | closeDev () |
| virtual void | initDev () |
| int | deviceType () const |
| virtual const char * | deviceName (void) const |
| int | rate (void) |
| virtual void | noteOn (uchar chn, uchar note, uchar vel) |
| virtual void | noteOff (uchar chn, uchar note, uchar vel) |
| virtual void | keyPressure (uchar chn, uchar note, uchar vel) |
| virtual void | chnPatchChange (uchar chn, uchar patch) |
| virtual void | chnPressure (uchar chn, uchar vel) |
| virtual void | chnPitchBender (uchar chn, uchar lsb, uchar msb) |
| virtual void | chnController (uchar chn, uchar ctl, uchar v) |
| virtual void | sysex (uchar *data, ulong size) |
| virtual void | channelSilence (uchar chn) |
| virtual void | channelMute (uchar chn, int b) |
| virtual void | setVolumePercentage (int volper) |
| int | ok (void) |
| virtual void | wait (double ticks) |
| virtual void | tmrSetTempo (int v) |
| virtual void | tmrStart (int tpcn) |
| virtual void | tmrStart () |
| virtual void | tmrStop () |
| virtual void | tmrContinue () |
| void | sync (int i=0) |
Public Attributes | |
| AlsaOutPrivate * | di |
Protected Member Functions | |
| virtual void | seqbuf_dump (void) |
| virtual void | seqbuf_clean (void) |
| void | eventInit (snd_seq_event_t *ev) |
| void | eventSend (snd_seq_event_t *ep) |
| void | timerEventSend (int type) |
Protected Attributes | |
| int | ndevs |
| int | nmidiports |
| double | count |
| double | lastcount |
| double | lasttime |
| double | begintime |
| int | m_rate |
| double | convertrate |
| long int | time |
Friends | |
| class | DeviceManager |
Detailed Description
Sends MIDI events to a MIDI devices using ALSA.
- Version:
- 0.9.5 17/01/2000
- Author:
- Antonio Larrosa Jimenez <larrosa@kde.org>
Definition at line 37 of file alsaout.h.
Constructor & Destructor Documentation
|
||||||||||||||||||||||||
|
Constructor. After constructing a MidiOut device, you must open it (using openDev() ). Additionally you may want to initialize it (with initDev() ), Definition at line 111 of file alsaout.cc. |
|
|
Destructor. It doesn't matter if you close the device ( closeDev() ) before you destruct the object because in other case, it will be closed here. Definition at line 126 of file alsaout.cc. References closeDev(). |
Member Function Documentation
|
|
Opens the device. This is generally called from DeviceManager , so you shouldn't call this yourself (except if you created the MidiOut object yourself.
Reimplemented from MidiOut. Definition at line 132 of file alsaout.cc. |
|
|
Closes the device. It basically tells the device (the file descriptor) is going to be closed.
Reimplemented from MidiOut. Definition at line 181 of file alsaout.cc. References ok(). Referenced by ~AlsaOut(). |
|
|
Initializes the device sending generic standard midi events and controllers, such as changing the patches of each channel to an Acoustic Piano (000), setting the volume to a normal value, etc.
Reimplemented from MidiOut. Definition at line 204 of file alsaout.cc. References chnController(), chnPatchChange(), chnPitchBender(), chnPressure(), ok(), and sysex(). |
|
|
Reimplemented from MidiOut. |
|
|
Returns the name and type of this MIDI device.
Reimplemented from MidiOut. Definition at line 561 of file alsaout.cc. |
|
||||||||||||||||
|
Reimplemented from MidiOut. Definition at line 291 of file alsaout.cc. References MidiMapper::channel(), MidiMapper::key(), and noteOff(). |
|
||||||||||||||||
|
Reimplemented from MidiOut. Definition at line 313 of file alsaout.cc. References MidiMapper::channel(), and MidiMapper::key(). Referenced by channelSilence(), and noteOn(). |
|
||||||||||||||||
|
See DeviceManager::keyPressure().
Reimplemented from MidiOut. Definition at line 328 of file alsaout.cc. References MidiMapper::channel(), and MidiMapper::key(). |
|
||||||||||||
|
See DeviceManager::chnPatchChange().
Reimplemented from MidiOut. Definition at line 340 of file alsaout.cc. References MidiMapper::channel(), and MidiMapper::patch(). Referenced by initDev(). |
|
||||||||||||
|
See DeviceManager::chnPressure().
Reimplemented from MidiOut. Definition at line 357 of file alsaout.cc. References MidiMapper::channel(). Referenced by initDev(). |
|
||||||||||||||||
|
See DeviceManager::chnPitchBender().
Reimplemented from MidiOut. Definition at line 371 of file alsaout.cc. References MidiMapper::channel(), and MidiMapper::pitchBender(). Referenced by initDev(). |
|
||||||||||||||||
|
See DeviceManager::chnController().
Reimplemented from MidiOut. Definition at line 387 of file alsaout.cc. References MidiMapper::channel(), and MidiMapper::controller(). Referenced by initDev(). |
|
||||||||||||
|
See DeviceManager::sysex().
Reimplemented from MidiOut. Definition at line 408 of file alsaout.cc. Referenced by initDev(). |
|
|
Mutes all notes being played on a given channel.
Reimplemented from MidiOut. Definition at line 424 of file alsaout.cc. References noteOff(). Referenced by channelMute(). |
|
||||||||||||
|
Mute or "unmute" a given channel .
Reimplemented from MidiOut. Definition at line 438 of file alsaout.cc. References channelSilence(). |
|
|
Change all channel volume events multiplying it by this percentage correction Instead of forcing a channel to a fixed volume, this method allows to music to fade out even when it was being played softly.
Reimplemented from MidiOut. |
|
|
Returns true if everything's ok and false if there has been any problem.
Reimplemented from MidiOut. Definition at line 209 of file alsaout.h. Referenced by closeDev(), and initDev(). |
|
|
Sends the buffer to the device and returns when it's played, so you can synchronize XXX: sync should be virtual after next bic release.
Reimplemented from MidiOut. Definition at line 497 of file alsaout.cc. |
The documentation for this class was generated from the following files:
