///////////////////////////////////////////////////////////////////////////////
// LameXP - Audio Encoder Front-End
-// Copyright (C) 2004-2011 LoRd_MuldeR <MuldeR2@GMX.de>
+// Copyright (C) 2004-2015 LoRd_MuldeR <MuldeR2@GMX.de>
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
-// (at your option) any later version.
+// (at your option) any later version, but always including the *additional*
+// restrictions defined in the "License.txt" file.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
#pragma once
+//Internal
+#include "Global.h"
+
+//MUtils
+#include <MUtils/CPUFeatures.h>
+
+//Qt
#include <QThread>
////////////////////////////////////////////////////////////
Q_OBJECT
public:
- InitializationThread(void);
- void run();
+ InitializationThread(const MUtils::CPUFetaures::cpu_info_t &cpuFeatures);
+
bool getSuccess(void) { return !isRunning() && m_bSuccess; }
+ bool getSlowIndicator(void) { return m_slowIndicator; }
+
+ static void selfTest(void);
+
+protected:
+ void run(void);
+ double doInit(const size_t threadCount = 0);
private:
void delay(void);
- void initNeroAac(void);
- void initWmaDec(void);
+ void initTranslations(void);
+ void initAacEnc_Nero(void);
+ void initAacEnc_FHG(void);
+ void initAacEnc_QAAC(void);
bool m_bSuccess;
+ MUtils::CPUFetaures::cpu_info_t m_cpuFeatures;
+ bool m_slowIndicator;
};