summaryrefslogtreecommitdiff
path: root/attic/muse2-oom/muse2/muse/instruments/minstrument.h
diff options
context:
space:
mode:
Diffstat (limited to 'attic/muse2-oom/muse2/muse/instruments/minstrument.h')
-rw-r--r--attic/muse2-oom/muse2/muse/instruments/minstrument.h145
1 files changed, 0 insertions, 145 deletions
diff --git a/attic/muse2-oom/muse2/muse/instruments/minstrument.h b/attic/muse2-oom/muse2/muse/instruments/minstrument.h
deleted file mode 100644
index 0c37701f..00000000
--- a/attic/muse2-oom/muse2/muse/instruments/minstrument.h
+++ /dev/null
@@ -1,145 +0,0 @@
-//=========================================================
-// MusE
-// Linux Music Editor
-// $Id: minstrument.h,v 1.3.2.3 2009/03/09 02:05:18 terminator356 Exp $
-//
-// (C) Copyright 2000 Werner Schweer (ws@seh.de)
-//=========================================================
-
-#ifndef __MINSTRUMENT_H__
-#define __MINSTRUMENT_H__
-
-#include "globaldefs.h"
-#include <list>
-#include <vector>
-
-class MidiPort;
-class QMenu;
-class MidiPlayEvent;
-class Xml;
-class EventList;
-class MidiControllerList;
-class QString;
-
-//---------------------------------------------------------
-// Patch
-//---------------------------------------------------------
-
-struct Patch {
- signed char typ; // 1 - GM 2 - GS 4 - XG
- signed char hbank, lbank, prog;
- QString name;
- bool drum;
- void read(Xml&);
- void write(int level, Xml&);
- };
-
-typedef std::list<Patch*> PatchList;
-typedef PatchList::iterator iPatch;
-typedef PatchList::const_iterator ciPatch;
-
-//---------------------------------------------------------
-// PatchGroup
-//---------------------------------------------------------
-
-struct PatchGroup {
- QString name;
- PatchList patches;
- void read(Xml&);
- };
-
-typedef std::vector<PatchGroup*> PatchGroupList;
-typedef PatchGroupList::iterator iPatchGroup;
-typedef PatchGroupList::const_iterator ciPatchGroup;
-
-struct SysEx {
- QString name;
- QString comment;
- int dataLen;
- unsigned char* data;
- };
-
-//---------------------------------------------------------
-// MidiInstrument
-//---------------------------------------------------------
-
-class MidiInstrument {
- PatchGroupList pg;
- MidiControllerList* _controller;
- QList<SysEx*> _sysex;
- bool _dirty;
- int _nullvalue;
-
- void init();
-
- protected:
- EventList* _midiInit;
- EventList* _midiReset;
- EventList* _midiState;
- char* _initScript;
- QString _name;
- QString _filePath;
-
- public:
- MidiInstrument();
- virtual ~MidiInstrument();
- MidiInstrument(const QString& txt);
- const QString& iname() const { return _name; }
- void setIName(const QString& txt) { _name = txt; }
-
- //MidiInstrument& uniqueCopy(const MidiInstrument&);
- // Assign will 'delete' all existing patches and groups from the instrument.
- MidiInstrument& assign(const MidiInstrument&);
- QString filePath() const { return _filePath; }
- void setFilePath(const QString& s) { _filePath = s; }
- bool dirty() const { return _dirty; }
- void setDirty(bool v) { _dirty = v; }
-
- const QList<SysEx*>& sysex() const { return _sysex; }
- void removeSysex(SysEx* sysex) { _sysex.removeAll(sysex); }
- void addSysex(SysEx* sysex) { _sysex.append(sysex); }
-
- EventList* midiInit() const { return _midiInit; }
- EventList* midiReset() const { return _midiReset; }
- EventList* midiState() const { return _midiState; }
- const char* initScript() const { return _initScript; }
- MidiControllerList* controller() const { return _controller; }
- int nullSendValue() { return _nullvalue; }
- void setNullSendValue(int v) { _nullvalue = v; }
-
- void readMidiState(Xml& xml);
- virtual bool guiVisible() const { return false; }
- virtual void showGui(bool) {}
- virtual bool hasGui() const { return false; }
- virtual void writeToGui(const MidiPlayEvent&) {}
-
- virtual void reset(int, MType);
- virtual QString getPatchName(int,int,MType,bool);
- virtual void populatePatchPopup(QMenu*, int, MType, bool);
- void read(Xml&);
- void write(int level, Xml&);
-
- PatchGroupList* groups() { return &pg; }
- };
-
-//---------------------------------------------------------
-// MidiInstrumentList
-//---------------------------------------------------------
-
-class MidiInstrumentList : public std::list<MidiInstrument*> {
-
- public:
- MidiInstrumentList() {}
- };
-
-typedef MidiInstrumentList::iterator iMidiInstrument;
-
-extern MidiInstrumentList midiInstruments;
-extern MidiInstrument* genericMidiInstrument;
-extern void initMidiInstruments();
-extern MidiInstrument* registerMidiInstrument(const QString&);
-extern void removeMidiInstrument(const QString& name);
-extern void removeMidiInstrument(const MidiInstrument* instr);
-
-#endif
-