⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mfallegro.h

📁 Audacity是一款用於錄音和編輯聲音的、免費的開放源碼軟體。它可以執行於Mac OS X、Microsoft Windows、GNU/Linux和其它作業系統
💻 H
字号:
// midifile reader interface for serpent// a sequence of Events objectsclass Tracks {private:    long max;    void expand();public:    long len;    Events_ptr *tracks; // tracks is array of pointers    Events_ptr &operator[](int i) {        assert(i >= 0 && i < len);        return tracks[i];    }    Tracks() {        max = len = 0;        tracks = NULL;    }    void append(Events_ptr track);    void reset();};typedef class Pending {public:    Allegro_note_ptr note;    class Pending *next;    Pending(Allegro_note_ptr n, class Pending *list) { note = n; next = list; }} *Pending_ptr;class Allegro_midifile_reader: public Midifile_reader {public:    FILE *file;    Seq_ptr seq;    int divisions;    Pending_ptr pending;    Tracks tracks;    Events_ptr track;    int track_num;    Allegro_midifile_reader() { file = NULL; pending = NULL; }    // delete destroys the seq member as well, so set it to NULL if you    // copied the pointer elsewhere    virtual ~Allegro_midifile_reader();    // the following is used to load the Seq from the file:    void initialize(FILE *file);    void set_nomerge(bool flag) { Mf_nomerge = flag; }    void set_skipinit(bool flag) { Mf_skipinit = flag; }    long get_currtime() { return Mf_currtime; }protected:    void merge_tracks();    double get_time();    void update(int chan, int key, Parameter_ptr param);    void *Mf_malloc(size_t size) { return malloc(size); }    void Mf_free(void *obj, size_t size) { free(obj); }    /* Methods to be called while processing the MIDI file. */    void Mf_starttrack();    void Mf_endtrack();    int Mf_getc();    void Mf_eot();    void Mf_error(char *);    void Mf_header(int,int,int);    void Mf_on(int,int,int);    void Mf_off(int,int,int);    void Mf_pressure(int,int,int);    void Mf_controller(int,int,int);    void Mf_pitchbend(int,int,int);    void Mf_program(int,int);    void Mf_chanpressure(int,int);    void Mf_sysex(int,char*);    void Mf_arbitrary(int,char*);    void Mf_metamisc(int,int,char*);    void Mf_seqnum(int);    void Mf_smpte(int,int,int,int,int);    void Mf_timesig(int,int,int,int);    void Mf_tempo(int);    void Mf_keysig(int,int);    void Mf_sqspecific(int,char*);    void Mf_text(int,int,char*);};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -