![]() |
Mixxx
|
00001 /*************************************************************************** 00002 bpmscheme.h - Preset holding information for BPM detection 00003 ------------------- 00004 begin : Sat, Aug 25., 2007 00005 copyright : (C) 2007 by Micah Lee 00006 email : snipexv@gmail.com 00007 ***************************************************************************/ 00008 00009 /*************************************************************************** 00010 * * 00011 * This program is free software; you can redistribute it and/or modify * 00012 * it under the terms of the GNU General Public License as published by * 00013 * the Free Software Foundation; either version 2 of the License, or * 00014 * (at your option) any later version. * 00015 * * 00016 ***************************************************************************/ 00017 00018 #ifndef BPMSCHEME_H 00019 #define BPMSCHEME_H 00020 00021 #include <qobject.h> 00022 #include <qmutex.h> 00023 00024 class QString; 00025 class QDomElement; 00026 class QDomDocument; 00027 class QDomNode; 00028 class TrackInfoObject; 00029 class ControlObjectThread; 00030 00031 00038 class BpmScheme : public QObject 00039 { 00040 public: 00041 BpmScheme(const QString & name, int minBpm, int maxBpm, bool entire); 00042 BpmScheme(); 00043 ~BpmScheme(); 00044 00045 void writeXML( QDomDocument & doc, QDomElement & header); 00046 00047 int getMinBpm(); 00048 int getMaxBpm(); 00049 00050 QString getName(); 00051 QString getComment(); 00052 00053 bool getAnalyzeEntireSong(); 00054 00055 void setMinBpm(const int minBpm); 00056 void setMaxBpm(const int maxBpm); 00057 00058 void setName(const QString & name); 00059 void setComment(const QString & comment); 00060 00061 void setAnalyzeEntireSong(const bool entire); 00062 00063 00064 protected: 00065 int m_MinBpm; 00066 int m_MaxBpm; 00067 bool m_AnalyzeEntireSong; 00068 QString m_Name; 00069 QString m_Comment; 00070 00072 QMutex m_qMutex; 00073 }; 00074 00075 #endif