diff options
| author | Robert Jonsson <spamatica@gmail.com> | 2011-09-15 12:14:55 +0000 | 
|---|---|---|
| committer | Robert Jonsson <spamatica@gmail.com> | 2011-09-15 12:14:55 +0000 | 
| commit | b0546e5e7f7044019892543c6c82029db8d564a7 (patch) | |
| tree | 1b96a6260900f3fbf3513fb48a5a72aa89052dc8 /attic/muse_qt4_evolution/synti/libsynti | |
| parent | 583c73d1a07154d3d2672d65d8cce6495f490454 (diff) | |
moved attic to a branch of it's own
Diffstat (limited to 'attic/muse_qt4_evolution/synti/libsynti')
| -rw-r--r-- | attic/muse_qt4_evolution/synti/libsynti/CMakeLists.txt | 39 | ||||
| -rw-r--r-- | attic/muse_qt4_evolution/synti/libsynti/evdata.h | 66 | ||||
| -rw-r--r-- | attic/muse_qt4_evolution/synti/libsynti/gui.cpp | 124 | ||||
| -rw-r--r-- | attic/muse_qt4_evolution/synti/libsynti/gui.h | 72 | ||||
| -rw-r--r-- | attic/muse_qt4_evolution/synti/libsynti/mess.cpp | 123 | ||||
| -rw-r--r-- | attic/muse_qt4_evolution/synti/libsynti/mess.h | 105 | ||||
| -rw-r--r-- | attic/muse_qt4_evolution/synti/libsynti/mess2.cpp | 128 | ||||
| -rw-r--r-- | attic/muse_qt4_evolution/synti/libsynti/mess2.h | 57 | ||||
| -rw-r--r-- | attic/muse_qt4_evolution/synti/libsynti/midievent.cpp | 21 | ||||
| -rw-r--r-- | attic/muse_qt4_evolution/synti/libsynti/midievent.h | 55 | ||||
| -rw-r--r-- | attic/muse_qt4_evolution/synti/libsynti/mono.cpp | 47 | ||||
| -rw-r--r-- | attic/muse_qt4_evolution/synti/libsynti/mono.h | 47 | ||||
| -rw-r--r-- | attic/muse_qt4_evolution/synti/libsynti/poly.cpp | 35 | ||||
| -rw-r--r-- | attic/muse_qt4_evolution/synti/libsynti/poly.h | 39 | 
14 files changed, 0 insertions, 958 deletions
| diff --git a/attic/muse_qt4_evolution/synti/libsynti/CMakeLists.txt b/attic/muse_qt4_evolution/synti/libsynti/CMakeLists.txt deleted file mode 100644 index c30048dc..00000000 --- a/attic/muse_qt4_evolution/synti/libsynti/CMakeLists.txt +++ /dev/null @@ -1,39 +0,0 @@ -#============================================================================= -#  MusE -#  Linux Music Editor -#  $Id:$ -# -#  Copyright (C) 2002-2006 by Werner Schweer and others -# -#  This program is free software; you can redistribute it and/or modify -#  it under the terms of the GNU General Public License version 2. -# -#  This program is distributed in the hope that it will be useful, -#  but WITHOUT ANY WARRANTY; without even the implied warranty of -#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the -#  GNU General Public License for more details. -# -#  You should have received a copy of the GNU General Public License -#  along with this program; if not, write to the Free Software -#  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. -#============================================================================= - -include(${PROJECT_SOURCE_DIR}/pch.txt) - -add_library(synti -      ${PROJECT_BINARY_DIR}/all-pic.h.pch -      mess.cpp -      mess2.cpp -      gui.cpp -      mono.cpp -      poly.cpp -      midievent.cpp -      ) - -# -# -fPIC is necessary for 64 bit systems -# -set_target_properties( synti -   PROPERTIES COMPILE_FLAGS "-fPIC -include ${PROJECT_BINARY_DIR}/all-pic.h" -   ) - diff --git a/attic/muse_qt4_evolution/synti/libsynti/evdata.h b/attic/muse_qt4_evolution/synti/libsynti/evdata.h deleted file mode 100644 index 29f6441e..00000000 --- a/attic/muse_qt4_evolution/synti/libsynti/evdata.h +++ /dev/null @@ -1,66 +0,0 @@ -//========================================================= -//  MusE -//  Linux Music Editor -//  $Id: evdata.h,v 1.1 2004/02/13 13:55:03 wschweer Exp $ -// -//  (C) Copyright 1999-2003 Werner Schweer (ws@seh.de) -//========================================================= - -#ifndef __EVDATA_H__ -#define __EVDATA_H__ - -#include <memory.h> - -//--------------------------------------------------------- -//   EvData -//    variable len event data (sysex, meta etc.) -//--------------------------------------------------------- - -class EvData { -      int* refCount; - -   public: -      unsigned char* data; -      int dataLen; - -      EvData()  { -            data     = 0; -            dataLen  = 0; -            refCount = new int(1); -            } -      EvData(const EvData& ed) { -            data     = ed.data; -            dataLen  = ed.dataLen; -            refCount = ed.refCount; -            (*refCount)++; -            } - -      EvData& operator=(const EvData& ed) { -            if (data == ed.data) -                  return *this; -            if (--(*refCount) == 0) { -                  delete refCount; -                  delete[] data; -                  } -            data     = ed.data; -            dataLen  = ed.dataLen; -            refCount = ed.refCount; -            (*refCount)++; -            return *this; -            } - -      ~EvData() { -            if (--(*refCount) == 0) { -                  delete[] data; -                  delete refCount; -                  } -            } -      void setData(const unsigned char* p, int l) { -            data = new unsigned char[l]; -            memcpy(data, p, l); -            dataLen = l; -            } -      }; - -#endif - diff --git a/attic/muse_qt4_evolution/synti/libsynti/gui.cpp b/attic/muse_qt4_evolution/synti/libsynti/gui.cpp deleted file mode 100644 index 30fd177b..00000000 --- a/attic/muse_qt4_evolution/synti/libsynti/gui.cpp +++ /dev/null @@ -1,124 +0,0 @@ -//========================================================= -//  MusE -//  Linux Music Editor -//    software synthesizer helper library -//    $Id: gui.cpp,v 1.7 2005/05/11 14:18:48 wschweer Exp $ -// -//  (C) Copyright 2004 Werner Schweer (ws@seh.de) -//========================================================= - -#include "gui.h" -#include "muse/midi.h" - -#include <unistd.h> - -//--------------------------------------------------------- -//   MessGui -//--------------------------------------------------------- - -MessGui::MessGui() -      { -      // -      // prepare for interprocess communication: -      // -      int filedes[2];         // 0 - reading   1 - writing -      if (pipe(filedes) == -1) { -            perror("thread:creating pipe4"); -            exit(-1); -            } -      readFd      = filedes[0]; -      writeFd     = filedes[1]; -      wFifoSize   = 0; -      wFifoWindex = 0; -      wFifoRindex = 0; -      rFifoSize   = 0; -      rFifoWindex = 0; -      rFifoRindex = 0; -      } - -//--------------------------------------------------------- -//   MessGui -//--------------------------------------------------------- - -MessGui::~MessGui() -      { -      } - -//--------------------------------------------------------- -//   readMessage -//--------------------------------------------------------- - -void MessGui::readMessage() -      { -      char c; -      while (rFifoSize) { -            ::read(readFd, &c, 1); -            processEvent(rFifo[rFifoRindex]); -            rFifoRindex = (rFifoRindex + 1) % EVENT_FIFO_SIZE; -            --rFifoSize; -            } -      } - -//--------------------------------------------------------- -//   sendController -//--------------------------------------------------------- - -void MessGui::sendController(int ch, int idx, int val) -      { -      sendEvent(MidiEvent(0, ch, ME_CONTROLLER, idx, val)); -      } - -//--------------------------------------------------------- -//   sendSysex -//--------------------------------------------------------- - -void MessGui::sendSysex(unsigned char* p, int n) -      { -      sendEvent(MidiEvent(0, ME_SYSEX, p, n)); -      } - -//--------------------------------------------------------- -//   writeEvent -//    send an event to synti gui -//--------------------------------------------------------- - -void MessGui::writeEvent(const MidiEvent& ev) -      { -      if (rFifoSize == EVENT_FIFO_SIZE) { -            printf("event synti->gui  fifo overflow\n"); -            return; -            } -      rFifo[rFifoWindex] = ev; -      rFifoWindex = (rFifoWindex + 1) % EVENT_FIFO_SIZE; -      ++rFifoSize; -      write(writeFd, "x", 1);  // wakeup GUI -      } - -//--------------------------------------------------------- -//   sendEvent -//--------------------------------------------------------- - -void MessGui::sendEvent(const MidiEvent& ev) -      { -      if (wFifoSize == EVENT_FIFO_SIZE) { -            printf("event gui->synti  fifo overflow\n"); -            return; -            } -      wFifo[wFifoWindex] = ev; -      wFifoWindex = (wFifoWindex + 1) % EVENT_FIFO_SIZE; -      ++wFifoSize; -      } - -//--------------------------------------------------------- -//   readEvent -//    read event from synti gui -//--------------------------------------------------------- - -MidiEvent MessGui::readEvent() -      { -      MidiEvent ev = wFifo[wFifoRindex]; -      wFifoRindex = (wFifoRindex + 1) % EVENT_FIFO_SIZE; -      --wFifoSize; -      return ev; -      } - diff --git a/attic/muse_qt4_evolution/synti/libsynti/gui.h b/attic/muse_qt4_evolution/synti/libsynti/gui.h deleted file mode 100644 index 27bebe3f..00000000 --- a/attic/muse_qt4_evolution/synti/libsynti/gui.h +++ /dev/null @@ -1,72 +0,0 @@ -//========================================================= -//  MusE -//  Linux Music Editor -//    software synthesizer helper library -//    $Id: gui.h,v 1.5 2005/05/11 14:18:48 wschweer Exp $ -// -//  (C) Copyright 2004 Werner Schweer (ws@seh.de) -//========================================================= - -#ifndef __SYNTH_GUI_H__ -#define __SYNTH_GUI_H__ - -#include "midievent.h" - -const int EVENT_FIFO_SIZE = 256; -class QWidget; - -//--------------------------------------------------------- -//   MessGui -//    manage IO from synti-GUI to Host -//--------------------------------------------------------- - -class MessGui { -      int writeFd; - -      // Event Fifo  synti -> GUI -      MidiEvent rFifo[EVENT_FIFO_SIZE]; -      volatile int rFifoSize; -      int rFifoWindex; -      int rFifoRindex; - -      // Event Fifo  GUI -> synti -      MidiEvent wFifo[EVENT_FIFO_SIZE]; -      volatile int wFifoSize; -      int wFifoWindex; -      int wFifoRindex; - -   protected: -      int readFd; -      void readMessage(); -      void sendEvent(const MidiEvent& ev); -      void sendController(int ch, int idx, int val); -      void sendSysex(unsigned char*, int); - -      virtual void processEvent(const MidiEvent&) {}; - -   public: -      MessGui(); -      virtual ~MessGui(); - -      void writeEvent(const MidiEvent&); -      int fifoSize() const { return wFifoSize; } -      MidiEvent readEvent(); -      }; - -//--------------------------------------------------------- -//   SynthGuiCtrl -//--------------------------------------------------------- - -struct SynthGuiCtrl  { -      enum EditorType { SLIDER, SWITCH, COMBOBOX }; -      QWidget* editor; -      QWidget* label; -      EditorType type; - -      SynthGuiCtrl() {} -      SynthGuiCtrl(QWidget* w, QWidget* l, const EditorType t) -         : editor(w), label(l), type(t) {} -      }; - -#endif - diff --git a/attic/muse_qt4_evolution/synti/libsynti/mess.cpp b/attic/muse_qt4_evolution/synti/libsynti/mess.cpp deleted file mode 100644 index 49f030f8..00000000 --- a/attic/muse_qt4_evolution/synti/libsynti/mess.cpp +++ /dev/null @@ -1,123 +0,0 @@ -//========================================================= -//  MusE -//  Linux Music Editor -//    $Id: mess.cpp,v 1.3 2005/05/11 14:18:48 wschweer Exp $ -//  (C) Copyright 2004 Werner Schweer (ws@seh.de) -//========================================================= - -#include "mess.h" -#include "muse/midi.h" - -static const int FIFO_SIZE = 32; - -//--------------------------------------------------------- -//   MessP -//    private data for class Mess -//--------------------------------------------------------- - -struct MessP { -      // Event Fifo  synti -> Host: -      MidiEvent fifo[FIFO_SIZE]; -      volatile int fifoSize; -      int fifoWindex; -      int fifoRindex; -      }; - -//--------------------------------------------------------- -//   Mess -//--------------------------------------------------------- - -Mess::Mess(int n) -      { -      _channels     = n; -      _sampleRate   = 44100; -      d             = new MessP; -      d->fifoSize   = 0; -      d->fifoWindex = 0; -      d->fifoRindex = 0; -      } - -//--------------------------------------------------------- -//   Mess -//--------------------------------------------------------- - -Mess::~Mess() -      { -      delete d; -      } - -//--------------------------------------------------------- -//   getGeometry -//    dummy -//--------------------------------------------------------- - -void Mess::getGeometry(int* x, int* y, int* w, int* h) const -      { -      x = 0; -      y = 0; -      w = 0; -      h = 0; -      } - -//--------------------------------------------------------- -//   sendEvent -//    send Event synti -> host -//--------------------------------------------------------- - -void Mess::sendEvent(MidiEvent ev) -      { -      if (d->fifoSize == FIFO_SIZE) { -            printf("event synti->host  fifo overflow\n"); -            return; -            } -      d->fifo[d->fifoWindex] = ev; -      d->fifoWindex = (d->fifoWindex + 1) % FIFO_SIZE; -      ++(d->fifoSize); -      } - -//--------------------------------------------------------- -//   receiveEvent -//    called from host -//--------------------------------------------------------- - -MidiEvent Mess::receiveEvent() -      { -      MidiEvent ev = d->fifo[d->fifoRindex]; -      d->fifoRindex = (d->fifoRindex + 1) % FIFO_SIZE; -      --(d->fifoSize); -      return ev; -      } - -//--------------------------------------------------------- -//   eventsPending -//    called from host: -//       while (eventsPending()) { -//             receiveEvent(); -//             ... -//--------------------------------------------------------- - -int Mess::eventsPending() const -      { -      return d->fifoSize; -      } - -//--------------------------------------------------------- -//   processEvent -//    return true if synti is busy -//--------------------------------------------------------- - -bool Mess::processEvent(const MidiEvent& ev) -      { -      switch(ev.type()) { -            case ME_NOTEON: -                  return playNote(ev.channel(), ev.dataA(), ev.dataB()); -            case ME_NOTEOFF: -                  return playNote(ev.channel(), ev.dataA(), 0); -            case ME_SYSEX: -	            return sysex(ev.len(), ev.data()); -            case ME_CONTROLLER: -                  return setController(ev.channel(), ev.dataA(), ev.dataB()); -            } -      return false; -      } - diff --git a/attic/muse_qt4_evolution/synti/libsynti/mess.h b/attic/muse_qt4_evolution/synti/libsynti/mess.h deleted file mode 100644 index c407d17e..00000000 --- a/attic/muse_qt4_evolution/synti/libsynti/mess.h +++ /dev/null @@ -1,105 +0,0 @@ -//========================================================= -//  MusE -//  Linux Music Editor -//    $Id: mess.h,v 1.6 2005/05/11 14:18:48 wschweer Exp $ -//  (C) Copyright 2001-2004 Werner Schweer (ws@seh.de) -//========================================================= - -#ifndef __MESS_H__ -#define __MESS_H__ - -#define MESS_MAJOR_VERSION 3 -#define MESS_MINOR_VERSION 1 - -#include "midievent.h" - -class QWidget; -class MessP; - -//--------------------------------------------------------- -//   MidiPatch -//--------------------------------------------------------- - -#define MP_TYPE_GM 1 -#define MP_TYPE_GS 2 -#define MP_TYPE_XG 4 -#define MP_TYPE_LBANK 8 -#define MP_TYPE_HBANK 16 - -struct MidiPatch { -      signed char typ;    // 1 - GM  2 - GS  4 - XG  8 - LBANK  16 - HBANK -      signed char hbank, lbank, prog; -      const char* name; -      }; - -//--------------------------------------------------------- -//  Mess -//    MusE experimental software synth -//    Instance virtual interface class -//--------------------------------------------------------- - -class Mess { -      MessP* d; - -      int _sampleRate; -      int _channels;                // 1 - mono,  2 - stereo - -   public: -      Mess(int channels); -      virtual ~Mess(); - -      int channels() const       { return _channels;   } -      int sampleRate() const     { return _sampleRate; } -      void setSampleRate(int r)  { _sampleRate = r;    } - -      virtual void process(float** data, int offset, int len) = 0; - -      // The synti has to (re-)implement processEvent() or provide -      // the playNote()/setControll()/sysex() functions. -      // The even routines return true if synti is busy and the -      // event must be send again. - -      virtual bool processEvent(const MidiEvent&); -      virtual bool setController(int, int, int) { return false; } -      virtual bool playNote(int, int, int) { return false; } -	virtual bool sysex(int, const unsigned char*) { return false; } - -      virtual void getInitData(int*, const unsigned char**) {} -      virtual int getControllerInfo(int, const char**, int*, int*, int*) {return 0;} -      virtual const char* getPatchName(int, int, int) const { return "?"; } -      virtual const MidiPatch* getPatchInfo(int, const MidiPatch*) const { return 0; } - -      // synthesizer -> host communication -      void sendEvent(MidiEvent);  // called from synti -      MidiEvent receiveEvent();   // called from host -      int eventsPending() const; - -      // GUI interface routines -      virtual bool hasGui() const { return false; } -      virtual bool guiVisible() const { return false; } -      virtual void showGui(bool) {} -      virtual void getGeometry(int* x, int* y, int* w, int* h) const; -      virtual void setGeometry(int, int, int, int) {} -      }; - -//--------------------------------------------------------- -//   MESS -//    Class descriptor -//--------------------------------------------------------- - -struct MESS { -      const char* name; -      const char* description; -      const char* version; -      int majorMessVersion, minorMessVersion; -         // QWidget* parent allows for a threaded GUI using the Qt Library -         // can be ignored by synti -      Mess* (*instantiate)(int sr, const char* name); -      }; - -extern "C" { -      const MESS* mess_descriptor(); -      } - -#endif - diff --git a/attic/muse_qt4_evolution/synti/libsynti/mess2.cpp b/attic/muse_qt4_evolution/synti/libsynti/mess2.cpp deleted file mode 100644 index 588edac9..00000000 --- a/attic/muse_qt4_evolution/synti/libsynti/mess2.cpp +++ /dev/null @@ -1,128 +0,0 @@ -//========================================================= -//  MusE -//  Linux Music Editor -//    $Id:$ -//  (C) Copyright 2007 Werner Schweer (ws@seh.de) -//========================================================= - -#include "mess2.h" - -QList<SynthCtrl*> Mess2::ctrl; - -//--------------------------------------------------------- -//   Mess2 -//--------------------------------------------------------- - -Mess2::Mess2(int channels) -   : Mess(channels) -      { -      initData = 0; -      } - -//--------------------------------------------------------- -//   Mess2 -//--------------------------------------------------------- - -Mess2::~Mess2() -      { -      if (initData) -            delete[] initData; -      } - -//--------------------------------------------------------- -//   addController -//--------------------------------------------------------- - -void Mess2::addController(const char* name, int id, int min, int max, int init) -      { -      SynthCtrl* c = new SynthCtrl(name, id, min, max, init); -      ctrl.append(c); -      } - -//--------------------------------------------------------- -//   controllerIdx -//--------------------------------------------------------- - -int Mess2::controllerIdx(const char* name) -      { -      for (int i = 0; i < ctrl.size(); ++i) { -            if (strcmp(ctrl[i]->name, name) == 0) -                  return i; -            } -      return -1; -      } - -//--------------------------------------------------------- -//   controllerIdx -//--------------------------------------------------------- - -int Mess2::controllerIdx(int ctrlId) -      { -      for (int i = 0; i < ctrl.size(); ++i) { -            if (ctrl[i]->ctrl == ctrlId) -                  return i; -            } -      return -1; -      } - -//--------------------------------------------------------- -//   controllerId -//--------------------------------------------------------- - -int Mess2::controllerId(int idx) -      { -      if (idx < 0 || idx >= ctrl.size()) { -            printf("controllId::illegal controller index %d\n", idx); -            return -1; -            } -      return ctrl[idx]->ctrl; -      } - -//--------------------------------------------------------- -//   controllerName -//--------------------------------------------------------- - -const char* Mess2::controllerName(int idx) -      { -      if (idx < 0 || idx >= ctrl.size()) { -            printf("controllerName::illegal controller index %d\n", idx); -            return "?"; -            } -      return ctrl[idx]->name; -      } - -//--------------------------------------------------------- -//   getInitData -//--------------------------------------------------------- - -void Mess2::getInitData(int* bytes, const unsigned char** data) -      { -      if (initData) -            delete[] initData; -      int n    = ctrl.size() * sizeof(int); -      initData = new unsigned char[n]; -      int* p = (int*)initData; -      foreach(SynthCtrl* c, ctrl) { -            *p++ = c->val; -            } -      *data  = initData; -      *bytes = n; -      } - -//--------------------------------------------------------- -//   getControllerInfo -//--------------------------------------------------------- - -int Mess2::getControllerInfo(int idx, const char** name, int* id, int* min, int* max) -      { -      if (idx < 0 || idx >= ctrl.size()) -            return 0; -      *name = ctrl[idx]->name; -      *id   = ctrl[idx]->ctrl; -      *min  = ctrl[idx]->min; -      *max  = ctrl[idx]->max; -      ++idx; -      return (idx >= ctrl.size()) ? 0 : idx; -      } - - diff --git a/attic/muse_qt4_evolution/synti/libsynti/mess2.h b/attic/muse_qt4_evolution/synti/libsynti/mess2.h deleted file mode 100644 index 207eb6c3..00000000 --- a/attic/muse_qt4_evolution/synti/libsynti/mess2.h +++ /dev/null @@ -1,57 +0,0 @@ -//========================================================= -//  MusE -//  Linux Music Editor -//    $Id:$ -//  (C) Copyright 2007 Werner Schweer (ws@seh.de) -//========================================================= - -#ifndef __MESS2_H__ -#define __MESS2_H__ - -#include "mess.h" - -//--------------------------------------------------------- -//   SynthCtlr -//--------------------------------------------------------- - -struct SynthCtrl { -      const char* name; -      int ctrl; -      int min; -      int max; -      int init; -      int val; -      SynthCtrl(const char* n, int i, int a, int b, int c) -         : name(n), ctrl(i), min(a), max(b), init(c) -            {} -      }; - -//--------------------------------------------------------- -//  Mess2 -//    MusE experimental software synth -//    extended interface -//--------------------------------------------------------- - -class Mess2 : public Mess { -      unsigned char* initData; - -      void getInitData(int*, const unsigned char**); -      int getControllerInfo(int, const char**, int*, int*, int*); - -   protected: -      static QList<SynthCtrl*> ctrl; - -      static void addController(const char* name, -         int ctrl, int min = 0, int max = 16384, int init = 0); -      static int controllerIdx(const char* name); -      static int controllerId(int idx); -      static int controllerIdx(int id); -      static const char* controllerName(int idx); - -   public: -      Mess2(int channels); -      virtual ~Mess2(); -      }; - -#endif - diff --git a/attic/muse_qt4_evolution/synti/libsynti/midievent.cpp b/attic/muse_qt4_evolution/synti/libsynti/midievent.cpp deleted file mode 100644 index 7c1e14fd..00000000 --- a/attic/muse_qt4_evolution/synti/libsynti/midievent.cpp +++ /dev/null @@ -1,21 +0,0 @@ -//========================================================= -//  MusE -//  Linux Music Editor -//  $Id: mpevent.cpp,v 1.3 2005/05/11 14:18:48 wschweer Exp $ -// -//  (C) Copyright 2002-2004 Werner Schweer (ws@seh.de) -//========================================================= - -#include "midievent.h" - -//--------------------------------------------------------- -//   MidiEvent -//--------------------------------------------------------- - -MidiEvent::MidiEvent(unsigned t, int tpe, const unsigned char* data, int len) -      { -      _time = t; -      edata.setData(data, len); -      _type = tpe; -      } - diff --git a/attic/muse_qt4_evolution/synti/libsynti/midievent.h b/attic/muse_qt4_evolution/synti/libsynti/midievent.h deleted file mode 100644 index a435d257..00000000 --- a/attic/muse_qt4_evolution/synti/libsynti/midievent.h +++ /dev/null @@ -1,55 +0,0 @@ -//========================================================= -//  MusE -//  Linux Music Editor -//  $Id: mpevent.h,v 1.3 2005/05/11 14:18:48 wschweer Exp $ -// -//  (C) Copyright 1999-2002 Werner Schweer (ws@seh.de) -//========================================================= - -#ifndef __MIDIEVENT_H__ -#define __MIDIEVENT_H__ - -#include "evdata.h" - -//--------------------------------------------------------- -//   MidiEvent -//--------------------------------------------------------- - -class MidiEvent { -      unsigned _time; -      EvData edata; -      unsigned char _channel, _type; -      int _a, _b; - -   public: -      MidiEvent() {} -      MidiEvent(unsigned tm, int c, int t, int a, int b) -        : _time(tm), _channel(c & 0xf), _type(t), _a(a), _b(b) {} -      MidiEvent(unsigned t, int type, const unsigned char* data, int len); -      MidiEvent(unsigned t, int tpe, EvData d) : _time(t), edata(d), _type(tpe) {} - -      ~MidiEvent()         {} - -      int channel() const      { return _channel; } -      int type()    const      { return _type;    } -      int dataA()   const      { return _a;       } -      int dataB()   const      { return _b;       } -      unsigned time() const    { return _time;    } - -      void setChannel(int val) { _channel = val;  } -      void setType(int val)    { _type = val;     } -      void setA(int val)       { _a = val;        } -      void setB(int val)       { _b = val;        } -      void setTime(unsigned val) { _time = val;     } - -      const EvData& eventData() const { return edata; } -      unsigned char* data() const     { return edata.data; } -      int len() const                 { return edata.dataLen; } -      void setData(const EvData& e)   { edata = e; } -      void setData(const unsigned char* p, int len) { edata.setData(p, len); } -      bool isNote() const      { return _type == 0x90; } -      bool isNoteOff() const   { return (_type == 0x80)||(_type == 0x90 && _b == 0); } -      }; - -#endif - diff --git a/attic/muse_qt4_evolution/synti/libsynti/mono.cpp b/attic/muse_qt4_evolution/synti/libsynti/mono.cpp deleted file mode 100644 index 14a23aca..00000000 --- a/attic/muse_qt4_evolution/synti/libsynti/mono.cpp +++ /dev/null @@ -1,47 +0,0 @@ -//========================================================= -//  MusE -//  Linux Music Editor -//    software synthesizer helper library -//    $Id: mono.cpp,v 1.2 2004/04/15 13:46:18 wschweer Exp $ -// -//  (C) Copyright 2004 Werner Schweer (ws@seh.de) -//========================================================= - -#include "mono.h" - -//--------------------------------------------------------- -//   playNote -//--------------------------------------------------------- - -bool MessMono::playNote(int channel, int pitch, int velo) -      { -      if (velo == 0) { -            if (pitchStack.empty()) -                  return false; -            if (pitchStack.back().pitch == pitch) { -                  pitchStack.pop_back(); -                  if (pitchStack.empty()) { -                        note(channel, pitch, 0); -                        return false; -                        } -                  PitchVelo pv = pitchStack.back(); -                  note(pv.channel, pv.pitch, pv.velo);  // change pitch -                  return false; -                  } -            for (std::list<PitchVelo>::iterator i = pitchStack.begin(); -               i != pitchStack.end(); ++i) { -                  if ((*i).pitch == pitch) { -                        pitchStack.erase(i); -                        return false; -                        } -                  } -            // no noteon found -            // emergency stop: -            note(channel, pitch, velo); -            return false; -            } -      pitchStack.push_back(PitchVelo(channel, pitch, velo)); -      note(channel, pitch, velo); -      return false; -      } - diff --git a/attic/muse_qt4_evolution/synti/libsynti/mono.h b/attic/muse_qt4_evolution/synti/libsynti/mono.h deleted file mode 100644 index f2f8bdf7..00000000 --- a/attic/muse_qt4_evolution/synti/libsynti/mono.h +++ /dev/null @@ -1,47 +0,0 @@ -//========================================================= -//  MusE -//  Linux Music Editor -//    software synthesizer helper library -//    $Id: mono.h,v 1.4 2004/04/15 13:46:18 wschweer Exp $ -// -//  (C) Copyright 2004 Werner Schweer (ws@seh.de) -//========================================================= - -#ifndef __SYNTH_MONO_H__ -#define __SYNTH_MONO_H - -#include <list> -#include "mess.h" - -//--------------------------------------------------------- -//   PitchVelo -//--------------------------------------------------------- - -struct PitchVelo { -      signed char channel; -      signed char pitch; -      signed char velo; -      PitchVelo(signed char a, signed char b, signed char c) -         : channel(a), pitch(b), velo(c) {} -      }; - -//--------------------------------------------------------- -//   MessMono -//    implements some functions for monophone -//    synthesizer -//--------------------------------------------------------- - -class MessMono : public Mess { -      std::list<PitchVelo> pitchStack; - -   protected: -      virtual bool playNote(int channel, int pitch, int velo); -      virtual void note(int channel, int pitch, int velo) = 0; - -   public: -      MessMono() : Mess(1) {} -      virtual ~MessMono() {} -      }; - -#endif - diff --git a/attic/muse_qt4_evolution/synti/libsynti/poly.cpp b/attic/muse_qt4_evolution/synti/libsynti/poly.cpp deleted file mode 100644 index e76fe966..00000000 --- a/attic/muse_qt4_evolution/synti/libsynti/poly.cpp +++ /dev/null @@ -1,35 +0,0 @@ -//========================================================= -//  MusE -//  Linux Music Editor -//    software synthesizer helper library -//    $Id: poly.cpp,v 1.3 2004/06/01 14:25:50 wschweer Exp $ -// -//  (C) Copyright 2004 Werner Schweer (ws@seh.de) -//========================================================= - -#include "poly.h" -#include "muse/midictrl.h" - -//--------------------------------------------------------- -//   playNote -//--------------------------------------------------------- - -bool MessPoly::playNote(int /*channel*/, int /*pitch*/, int /*velo*/) -      { -      return false; -      } - -//--------------------------------------------------------- -//   setController -//--------------------------------------------------------- - -bool MessPoly::setController(int /*channel*/, int num, int /*val*/) -      { -      switch(num) { -            case CTRL_VOLUME: -            case CTRL_EXPRESSION: -                  break; -            } -      return false; -      } - diff --git a/attic/muse_qt4_evolution/synti/libsynti/poly.h b/attic/muse_qt4_evolution/synti/libsynti/poly.h deleted file mode 100644 index b990b198..00000000 --- a/attic/muse_qt4_evolution/synti/libsynti/poly.h +++ /dev/null @@ -1,39 +0,0 @@ -//========================================================= -//  MusE -//  Linux Music Editor -//    software synthesizer helper library -//    $Id: poly.h,v 1.2 2004/04/15 13:46:18 wschweer Exp $ -// -//  (C) Copyright 2004 Werner Schweer (ws@seh.de) -//========================================================= - -#ifndef __SYNTH_POLY_H__ -#define __SYNTH_POLY_H - -#include <list> -#include "mess.h" - -//--------------------------------------------------------- -//   MessPoly -//    implements some functions for monophone -//    synthesizer -//--------------------------------------------------------- - -class MessPoly : public Mess { -      float volume; -      float expression; - -      // cached values: -      float mainLevel; - -   protected: -      virtual bool playNote(int channel, int pitch, int velo); -      virtual bool setController(int, int, int); - -   public: -      MessPoly() : Mess(1) {} -      virtual ~MessPoly() {} -      }; - -#endif - | 
