summaryrefslogtreecommitdiff
path: root/attic/muse_qt4_evolution/al/tempo.h
diff options
context:
space:
mode:
Diffstat (limited to 'attic/muse_qt4_evolution/al/tempo.h')
-rw-r--r--attic/muse_qt4_evolution/al/tempo.h101
1 files changed, 0 insertions, 101 deletions
diff --git a/attic/muse_qt4_evolution/al/tempo.h b/attic/muse_qt4_evolution/al/tempo.h
deleted file mode 100644
index e2342003..00000000
--- a/attic/muse_qt4_evolution/al/tempo.h
+++ /dev/null
@@ -1,101 +0,0 @@
-//=============================================================================
-// AL
-// Audio Utility Library
-// $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.
-//=============================================================================
-
-#ifndef __TEMPO_H__
-#define __TEMPO_H__
-
-namespace AL {
-
-#ifndef MAX_TICK
-#define MAX_TICK (0x7fffffff/100)
-#endif
-
-class Xml;
-
-//---------------------------------------------------------
-// Tempo Event
-//---------------------------------------------------------
-
-struct TEvent {
- int tempo;
- unsigned tick; // new tempo at tick
- unsigned frame; // precomputed time for tick in sec
-
- int read(QDomNode);
- void write(Xml&, int) const;
-
- TEvent() { }
- TEvent(unsigned t, unsigned tk) {
- tempo = t;
- tick = tk;
- frame = 0;
- }
- };
-
-//---------------------------------------------------------
-// TempoList
-//---------------------------------------------------------
-
-typedef std::map<unsigned, TEvent*, std::less<unsigned> > TEMPOLIST;
-typedef TEMPOLIST::iterator iTEvent;
-typedef TEMPOLIST::const_iterator ciTEvent;
-typedef TEMPOLIST::reverse_iterator riTEvent;
-typedef TEMPOLIST::const_reverse_iterator criTEvent;
-
-class TempoList : public TEMPOLIST {
- int _tempoSN; // serial no to track tempo changes
- bool useList;
- int _tempo; // tempo if not using tempo list
- int _globalTempo; // %percent 50-200%
-
- void normalize();
- void add(unsigned tick, int tempo);
- void change(unsigned tick, int newTempo);
- void del(iTEvent);
- void del(unsigned tick);
-
- public:
- TempoList();
- void clear();
-
- void read(QDomNode);
- void write(Xml&) const;
- void dump() const;
-
- int tempo(unsigned tick) const;
- unsigned tick2frame(unsigned tick, unsigned frame, int* sn) const;
- unsigned tick2frame(unsigned tick, int* sn = 0) const;
- unsigned frame2tick(unsigned frame, int* sn = 0) const;
- unsigned frame2tick(unsigned frame, unsigned tick, int* sn) const;
- int tempoSN() const { return _tempoSN; }
- void setTempo(unsigned tick, int newTempo);
- void addTempo(unsigned t, int tempo);
- void delTempo(unsigned tick);
- void changeTempo(unsigned tick, int newTempo);
- bool setMasterFlag(unsigned tick, bool val);
- int globalTempo() const { return _globalTempo; }
- void setGlobalTempo(int val);
- };
-
-extern TempoList tempomap;
-}
-
-#endif
-