diff options
| author | Florian Jung <flo@windfisch.org> | 2011-09-27 16:08:57 +0000 |
|---|---|---|
| committer | Florian Jung <flo@windfisch.org> | 2011-09-27 16:08:57 +0000 |
| commit | e9e38901f1b0c8b0d4c11f6de37abf7ff6c7234f (patch) | |
| tree | 6db56ee33fda6adce28afc456c4fd84b56180453 /attic/muse_qt4_evolution/synti/zynaddsubfx/Seq/Sequencer.h | |
| parent | 5c2eaaf143f517e1a4d52e243a761e479aeb3e5b (diff) | |
| parent | d52fac00567bb85944188f3c946b86b2a420819c (diff) | |
merged with trunk
Diffstat (limited to 'attic/muse_qt4_evolution/synti/zynaddsubfx/Seq/Sequencer.h')
| -rw-r--r-- | attic/muse_qt4_evolution/synti/zynaddsubfx/Seq/Sequencer.h | 84 |
1 files changed, 0 insertions, 84 deletions
diff --git a/attic/muse_qt4_evolution/synti/zynaddsubfx/Seq/Sequencer.h b/attic/muse_qt4_evolution/synti/zynaddsubfx/Seq/Sequencer.h deleted file mode 100644 index 82ebe495..00000000 --- a/attic/muse_qt4_evolution/synti/zynaddsubfx/Seq/Sequencer.h +++ /dev/null @@ -1,84 +0,0 @@ -/* - ZynAddSubFX - a software synthesizer - - Sequencer.h - The Sequencer - Copyright (C) 2003-2005 Nasca Octavian Paul - Author: Nasca Octavian Paul - - This program is free software; you can redistribute it and/or modify - it under the terms of version 2 of the GNU General Public License - as published by the Free Software Foundation. - - 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 (version 2) for more details. - - You should have received a copy of the GNU General Public License (version 2) - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -*/ - -#ifndef SEQUENCER_H -#define SEQUENCER_H - -#include "../globals.h" -#include "MIDIEvents.h" -#include "MIDIFile.h" - -class Sequencer:public MIDIEvents{ - public: - Sequencer(); - ~Sequencer(); - - //theese functions are called by the master and are ignored if the recorder/player are stopped - void recordnote(char chan, char note, char vel); - void recordcontroller(char chan,unsigned int type,int par); - - //this is only for player - //it returns 1 if this must be called at least once more - //it returns 0 if there are no more notes for the current time - //or -1 if there is no note - int getevent(char ntrack, int *midich,int *type,int *par1, int *par2); - - //returns 0 if ok or -1 if there is a error loading file - int importmidifile(char *filename); - - void startplay(); - void stopplay(); - - - int play; - int playspeed;//viteza de rulare (0.1x-10x), 0=1.0x, 128=10x - void setplayspeed(int speed); - - private: - - MIDIFile midifile; - - /* Timer */ - struct timestruct{ - double abs;//the time from the begining of the track - double rel;//the time difference between the last and the current event - double last;//the time of the last event (absolute, since 1 Jan 1970) - //theese must be double, because the float's precision is too low - //and all theese represents the time in seconds - } playtime[NUM_MIDI_TRACKS]; - - void resettime(timestruct *t); - void updatecounter(timestruct *t);//this updates the timer values - - /* Player only*/ - - struct { - event ev; - double time; - } nextevent[NUM_MIDI_TRACKS]; - - double realplayspeed; - -}; - - -#endif - |
