summaryrefslogtreecommitdiff
path: root/attic/muse2-oom/muse2/muse/midifile.h
diff options
context:
space:
mode:
Diffstat (limited to 'attic/muse2-oom/muse2/muse/midifile.h')
-rw-r--r--attic/muse2-oom/muse2/muse/midifile.h113
1 files changed, 0 insertions, 113 deletions
diff --git a/attic/muse2-oom/muse2/muse/midifile.h b/attic/muse2-oom/muse2/muse/midifile.h
deleted file mode 100644
index da71a00a..00000000
--- a/attic/muse2-oom/muse2/muse/midifile.h
+++ /dev/null
@@ -1,113 +0,0 @@
-//=========================================================
-// MusE
-// Linux Music Editor
-// $Id: midifile.h,v 1.3 2004/01/04 18:24:43 wschweer Exp $
-//
-// (C) Copyright 1999-2004 Werner Schweer (ws@seh.de)
-//=========================================================
-
-#ifndef __MIDIFILE_H__
-#define __MIDIFILE_H__
-
-#include <stdio.h>
-#include <list>
-
-#include "globaldefs.h"
-#include "mpevent.h"
-
-struct MPEventList;
-class MidiPlayEvent;
-
-//---------------------------------------------------------
-// MidiFileTrack
-//---------------------------------------------------------
-
-struct MidiFileTrack {
- MPEventList events;
- bool isDrumTrack;
- MidiFileTrack() {
- isDrumTrack = false;
- }
- };
-
-typedef std::list<MidiFileTrack*> MidiFileTrackList;
-typedef MidiFileTrackList::iterator iMidiFileTrack;
-typedef MidiFileTrackList::const_iterator ciMidiFileTrack;
-
-//---------------------------------------------------------
-// MidiFile
-//---------------------------------------------------------
-
-class MidiFile {
- int _error;
- int format; // smf file format
- int ntracks; // number of midi tracks
- int _division;
- MType _mtype;
- MidiFileTrackList* _tracks;
-
- int status, click;
- int sstatus;
- int lastport, lastchannel;
- FILE* fp;
- int curPos;
-
- bool read(void*, size_t);
- bool write(const void*, size_t);
- void put(unsigned char c) { write(&c, 1); }
- bool skip(size_t);
- int readShort();
- bool writeShort(int);
- int readLong();
- bool writeLong(int);
- int getvl();
- void putvl(unsigned);
-
- bool readTrack(MidiFileTrack*);
- bool writeTrack(const MidiFileTrack*);
-
- int readEvent(MidiPlayEvent*, MidiFileTrack*);
- void writeEvent(const MidiPlayEvent*);
-
- public:
- MidiFile(FILE* f);
- ~MidiFile();
- bool read();
- bool write();
- QString error();
- MidiFileTrackList* trackList() { return _tracks; }
- int tracks() const { return ntracks; }
- void setTrackList(MidiFileTrackList* tr, int n) {
- _tracks = tr;
- ntracks = n;
- }
- void setDivision(int d) { _division = d; }
- int division() const { return _division; }
- void setMType(MType t) { _mtype = t; }
- MType mtype() const { return _mtype; }
- };
-
-#define XCHG_SHORT(x) ((((x)&0xFF)<<8) | (((x)>>8)&0xFF))
-#ifdef __i486__
-#define XCHG_LONG(x) \
- ({ int __value; \
- asm ("bswap %1; movl %1,%0" : "=g" (__value) : "r" (x)); \
- __value; })
-#else
-#define XCHG_LONG(x) ((((x)&0xFF)<<24) | \
- (((x)&0xFF00)<<8) | \
- (((x)&0xFF0000)>>8) | \
- (((x)>>24)&0xFF))
-#endif
-
-#if __BYTE_ORDER == __LITTLE_ENDIAN
-#define BE_SHORT(x) XCHG_SHORT(x)
-#define BE_LONG(x) XCHG_LONG(x)
-#else
-#define BE_SHORT(x) x
-#define BE_LONG(x) x
-#endif
-
-
-#endif
-