summaryrefslogtreecommitdiff
path: root/attic/muse2-oom/muse2/muse/mpevent.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'attic/muse2-oom/muse2/muse/mpevent.cpp')
-rw-r--r--attic/muse2-oom/muse2/muse/mpevent.cpp160
1 files changed, 0 insertions, 160 deletions
diff --git a/attic/muse2-oom/muse2/muse/mpevent.cpp b/attic/muse2-oom/muse2/muse/mpevent.cpp
deleted file mode 100644
index 9988c12b..00000000
--- a/attic/muse2-oom/muse2/muse/mpevent.cpp
+++ /dev/null
@@ -1,160 +0,0 @@
-//=========================================================
-// MusE
-// Linux Music Editor
-// $Id: mpevent.cpp,v 1.6.2.2 2009/11/25 09:09:43 terminator356 Exp $
-//
-// (C) Copyright 2002-2004 Werner Schweer (ws@seh.de)
-//=========================================================
-
-#include "mpevent.h"
-
-#include "helper.h"
-#include "event.h"
-#include "midictrl.h"
-#include "midiport.h"
-#include "muse/midi.h"
-
-//---------------------------------------------------------
-// MEvent
-//---------------------------------------------------------
-
-MEvent::MEvent(unsigned t, int port, int tpe, const unsigned char* data, int len)
- {
- _time = t;
- _port = port;
- edata.setData(data, len);
- _type = tpe;
- _loopNum = 0;
- }
-
-MEvent::MEvent(unsigned tick, int port, int channel, const Event& e)
- {
- setChannel(channel);
- setTime(tick);
- setPort(port);
- setLoopNum(0);
- switch(e.type()) {
- case Note:
- setType(ME_NOTEON);
- setA(e.dataA());
- setB(e.dataB());
- break;
- case Controller:
- setType(ME_CONTROLLER);
- setA(e.dataA()); // controller number
- setB(e.dataB()); // controller value
- break;
- case PAfter:
- setType(ME_POLYAFTER);
- setA(e.dataA());
- setB(e.dataB());
- break;
- case CAfter:
- setType(ME_AFTERTOUCH);
- setA(e.dataA());
- setB(0);
- break;
- case Sysex:
- setType(ME_SYSEX);
- setData(e.eventData());
- break;
- default:
- printf("MEvent::MEvent(): event type %d not implemented\n",
- type());
- break;
- }
- }
-
-//---------------------------------------------------------
-// dump
-//---------------------------------------------------------
-
-void MEvent::dump() const
- {
- printf("time:%d port:%d chan:%d ", _time, _port, _channel+1);
- if (_type == 0x90) { // NoteOn
- QString s = pitch2string(_a);
- printf("NoteOn %s(0x%x) %d\n", s.toLatin1().constData(), _a, _b);
- }
- else if (_type == 0xf0) {
- printf("SysEx len %d 0x%0x ...\n", len(), data()[0]);
- }
- else
- printf("type:0x%02x a=%d b=%d\n", _type, _a, _b);
- }
-
-//---------------------------------------------------------
-// operator <
-//---------------------------------------------------------
-
-bool MEvent::operator<(const MEvent& e) const
- {
- if (time() != e.time())
- return time() < e.time();
- if (port() != e.port())
- return port() < e.port();
-
- // play note off events first to prevent overlapping
- // notes
-
- if (channel() == e.channel())
- return type() == ME_NOTEOFF
- || (type() == ME_NOTEON && dataB() == 0);
-
- int map[16] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 10, 11, 12, 13, 14, 15 };
- return map[channel()] < map[e.channel()];
- }
-
-
-//---------------------------------------------------------
-// put
-// return true on fifo overflow
-//---------------------------------------------------------
-
-bool MidiFifo::put(const MidiPlayEvent& event)
- {
- if (size < MIDI_FIFO_SIZE) {
- fifo[wIndex] = event;
- wIndex = (wIndex + 1) % MIDI_FIFO_SIZE;
- // q_atomic_increment(&size);
- ++size;
- return false;
- }
- return true;
- }
-
-//---------------------------------------------------------
-// get
-//---------------------------------------------------------
-
-MidiPlayEvent MidiFifo::get()
- {
- MidiPlayEvent event(fifo[rIndex]);
- rIndex = (rIndex + 1) % MIDI_FIFO_SIZE;
- // q_atomic_decrement(&size);
- --size;
- return event;
- }
-
-//---------------------------------------------------------
-// peek
-//---------------------------------------------------------
-
-const MidiPlayEvent& MidiFifo::peek(int n)
- {
- int idx = (rIndex + n) % MIDI_FIFO_SIZE;
- return fifo[idx];
- }
-
-//---------------------------------------------------------
-// remove
-//---------------------------------------------------------
-
-void MidiFifo::remove()
- {
- rIndex = (rIndex + 1) % MIDI_FIFO_SIZE;
- // q_atomic_decrement(&size);
- --size;
- }
-
-