X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=src%2Fsource_avisynth.h;h=9bd48ab343024071c9330bfc2bbbe071148382ab;hb=e4253a7dc616b013ffea7d6659428b69cb32f8ad;hp=68d2b497712418c73963e59bbb760e406403f474;hpb=155f66c0617265f3e8acbc0425fff52a3c0209b8;p=x264-launcher%2Fx264-launcher.git diff --git a/src/source_avisynth.h b/src/source_avisynth.h index 68d2b49..9bd48ab 100644 --- a/src/source_avisynth.h +++ b/src/source_avisynth.h @@ -1,6 +1,6 @@ /////////////////////////////////////////////////////////////////////////////// // Simple x264 Launcher -// Copyright (C) 2004-2014 LoRd_MuldeR +// Copyright (C) 2004-2020 LoRd_MuldeR // // 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 @@ -22,28 +22,34 @@ #pragma once #include "source_abstract.h" +#include "model_sysinfo.h" +#include "model_preferences.h" class AvisynthSource : public AbstractSource { public: AvisynthSource(JobObject *jobObject, const OptionsModel *options, const SysinfoModel *const sysinfo, const PreferencesModel *const preferences, JobStatus &jobStatus, volatile bool *abort, volatile bool *pause, QSemaphore *semaphorePause, const QString &sourceFile); virtual ~AvisynthSource(void); + + virtual QString getName(void) const; virtual bool isSourceAvailable(void); - virtual void printVersion(const unsigned int &revision, const bool &modified); + virtual QString printVersion(const unsigned int &revision, const bool &modified); virtual bool isVersionSupported(const unsigned int &revision, const bool &modified); virtual void flushProcess(QProcess &processInput); + static const AbstractSourceInfo& getSourceInfo(void); + protected: - void checkVersion_init(QList &patterns, QStringList &cmdLine); - void checkVersion_parseLine(const QString &line, QList &patterns, unsigned int &coreVers, unsigned int &revision, bool &modified); + virtual void checkVersion_init(QList &patterns, QStringList &cmdLine); + virtual void checkVersion_parseLine(const QString &line, const QList &patterns, unsigned int &core, unsigned int &build, bool &modified); + virtual bool checkVersion_succeeded(const int &exitCode); virtual void checkSourceProperties_init(QList &patterns, QStringList &cmdLine); - virtual void checkSourceProperties_parseLine(const QString &line, QList &patterns, unsigned int &frames, unsigned int &fSizeW, unsigned int &fSizeH, unsigned int &fpsNom, unsigned int &fpsDen); + virtual void checkSourceProperties_parseLine(const QString &line, const QList &patterns, ClipInfo &clipInfo); - virtual const QString &getBinaryPath() { return m_binaryFile; } + virtual QString getBinaryPath(void) const { return getSourceInfo().getBinaryPath(m_sysinfo, m_sysinfo->getCPUFeatures(SysinfoModel::CPUFeatures_X64) && m_sysinfo->getAvisynth(SysinfoModel::Avisynth_X64) && (m_preferences->getPrefer64BitSource() || (!m_sysinfo->getAvisynth(SysinfoModel::Avisynth_X86)))); } + virtual QStringList getExtraPath(void) const { return getSourceInfo().getExtraPaths(m_sysinfo, m_sysinfo->getCPUFeatures(SysinfoModel::CPUFeatures_X64) && m_sysinfo->getAvisynth(SysinfoModel::Avisynth_X64) && (m_preferences->getPrefer64BitSource() || (!m_sysinfo->getAvisynth(SysinfoModel::Avisynth_X86)))); } virtual void buildCommandLine(QStringList &cmdLine); - - const QString m_binaryFile; };