本文整理汇总了C++中MythCommFlagCommandLineParser类的典型用法代码示例。如果您正苦于以下问题:C++ MythCommFlagCommandLineParser类的具体用法?C++ MythCommFlagCommandLineParser怎么用?C++ MythCommFlagCommandLineParser使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了MythCommFlagCommandLineParser类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: QueueCommFlagJob
static int QueueCommFlagJob(uint chanid, QDateTime starttime, bool rebuild)
{
QString startstring = MythDate::toString(starttime, MythDate::kFilename);
const ProgramInfo pginfo(chanid, starttime);
if (!pginfo.GetChanID())
{
if (progress)
{
QString tmp = QString(
"Unable to find program info for chanid %1 @ %2")
.arg(chanid).arg(startstring);
cerr << tmp.toLocal8Bit().constData() << endl;
}
return GENERIC_EXIT_NO_RECORDING_DATA;
}
if (cmdline.toBool("dryrun"))
{
QString tmp = QString("Job have been queued for chanid %1 @ %2")
.arg(chanid).arg(startstring);
cerr << tmp.toLocal8Bit().constData() << endl;
return GENERIC_EXIT_OK;
}
bool result = JobQueue::QueueJob(JOB_COMMFLAG,
pginfo.GetChanID(), pginfo.GetRecordingStartTime(), "", "", "",
rebuild ? JOB_REBUILD : 0, JOB_QUEUED, QDateTime());
if (result)
{
if (progress)
{
QString tmp = QString("Job Queued for chanid %1 @ %2")
.arg(chanid).arg(startstring);
cerr << tmp.toLocal8Bit().constData() << endl;
}
return GENERIC_EXIT_OK;
}
else
{
if (progress)
{
QString tmp = QString("Error queueing job for chanid %1 @ %2")
.arg(chanid).arg(startstring);
cerr << tmp.toLocal8Bit().constData() << endl;
}
return GENERIC_EXIT_DB_ERROR;
}
return GENERIC_EXIT_OK;
}
示例2: FlagCommercials
static int FlagCommercials(ProgramInfo *program_info, int jobid,
const QString &outputfilename, bool useDB, bool fullSpeed)
{
global_program_info = program_info;
int breaksFound = 0;
// configure commercial detection method
SkipTypes commDetectMethod = (SkipTypes)gCoreContext->GetNumSetting(
"CommercialSkipMethod", COMM_DETECT_ALL);
if (cmdline.toBool("commmethod"))
{
// pull commercial detection method from command line
QString commmethod = cmdline.toString("commmethod");
// assume definition as integer value
bool ok = true;
commDetectMethod = (SkipTypes) commmethod.toInt(&ok);
if (!ok)
{
// not an integer, attempt comma separated list
commDetectMethod = COMM_DETECT_UNINIT;
QMap<QString, SkipTypes>::const_iterator sit;
QStringList list = commmethod.split(",", QString::SkipEmptyParts);
QStringList::const_iterator it = list.begin();
for (; it != list.end(); ++it)
{
QString val = (*it).toLower();
if (val == "off")
{
commDetectMethod = COMM_DETECT_OFF;
break;
}
if (!skipTypes->contains(val))
{
cerr << "Failed to decode --method option '"
<< val.toLatin1().constData()
<< "'" << endl;
return GENERIC_EXIT_INVALID_CMDLINE;
}
if (commDetectMethod == COMM_DETECT_UNINIT) {
commDetectMethod = (SkipTypes) skipTypes->value(val);
} else {
commDetectMethod = (SkipTypes) ((int)commDetectMethod
| (int)skipTypes->value(val));
}
}
}
if (commDetectMethod == COMM_DETECT_UNINIT)
return GENERIC_EXIT_INVALID_CMDLINE;
}
else if (useDB)
{
// if not manually specified, and we have a database to access
// pull the commflag type from the channel
MSqlQuery query(MSqlQuery::InitCon());
query.prepare("SELECT commmethod FROM channel "
"WHERE chanid = :CHANID;");
query.bindValue(":CHANID", program_info->GetChanID());
if (!query.exec())
{
// if the query fails, return with an error
commDetectMethod = COMM_DETECT_UNINIT;
MythDB::DBError("FlagCommercials", query);
}
else if (query.next())
{
commDetectMethod = (enum SkipTypes)query.value(0).toInt();
if (commDetectMethod == COMM_DETECT_COMMFREE)
{
// if the channel is commercial free, drop to the default instead
commDetectMethod =
(enum SkipTypes)gCoreContext->GetNumSetting(
"CommercialSkipMethod", COMM_DETECT_ALL);
LOG(VB_COMMFLAG, LOG_INFO,
QString("Chanid %1 is marked as being Commercial Free, "
"we will use the default commercial detection "
"method").arg(program_info->GetChanID()));
}
else if (commDetectMethod == COMM_DETECT_UNINIT)
// no value set, so use the database default
commDetectMethod =
(enum SkipTypes)gCoreContext->GetNumSetting(
"CommercialSkipMethod", COMM_DETECT_ALL);
LOG(VB_COMMFLAG, LOG_INFO,
QString("Using method: %1 from channel %2")
.arg(commDetectMethod).arg(program_info->GetChanID()));
}
}
else if (!useDB)
{
// default to a cheaper method for debugging purposes
commDetectMethod = COMM_DETECT_BLANK;
//.........这里部分代码省略.........
示例3: main
int main(int argc, char *argv[])
{
int result = GENERIC_EXIT_OK;
// QString allStart = "19700101000000";
// QString allEnd = MythDate::current().toString("yyyyMMddhhmmss");
int jobType = JOB_NONE;
if (!cmdline.Parse(argc, argv))
{
cmdline.PrintHelp();
return GENERIC_EXIT_INVALID_CMDLINE;
}
if (cmdline.toBool("showhelp"))
{
cmdline.PrintHelp();
return GENERIC_EXIT_OK;
}
if (cmdline.toBool("showversion"))
{
cmdline.PrintVersion();
return GENERIC_EXIT_OK;
}
QCoreApplication a(argc, argv);
QCoreApplication::setApplicationName(MYTH_APPNAME_MYTHCOMMFLAG);
int retval = cmdline.ConfigureLogging("general",
!cmdline.toBool("noprogress"));
if (retval != GENERIC_EXIT_OK)
return retval;
CleanupGuard callCleanup(cleanup);
#ifndef _WIN32
QList<int> signallist;
signallist << SIGINT << SIGTERM << SIGSEGV << SIGABRT << SIGBUS << SIGFPE
<< SIGILL;
#if ! CONFIG_DARWIN
signallist << SIGRTMIN;
#endif
SignalHandler::Init(signallist);
signal(SIGHUP, SIG_IGN);
#endif
gContext = new MythContext(MYTH_BINARY_VERSION);
if (!gContext->Init( false, /*use gui*/
false, /*prompt for backend*/
false, /*bypass auto discovery*/
cmdline.toBool("skipdb"))) /*ignoreDB*/
{
LOG(VB_GENERAL, LOG_EMERG, "Failed to init MythContext, exiting.");
return GENERIC_EXIT_NO_MYTHCONTEXT;
}
cmdline.ApplySettingsOverride();
MythTranslation::load("mythfrontend");
if (cmdline.toBool("outputmethod"))
{
QString om = cmdline.toString("outputmethod");
if (outputTypes->contains(om))
outputMethod = outputTypes->value(om);
}
if (cmdline.toBool("chanid") && cmdline.toBool("starttime"))
{
// operate on a recording in the database
uint chanid = cmdline.toUInt("chanid");
QDateTime starttime = cmdline.toDateTime("starttime");
if (cmdline.toBool("clearskiplist"))
return ClearSkipList(chanid, starttime);
if (cmdline.toBool("gencutlist"))
return CopySkipListToCutList(chanid, starttime);
if (cmdline.toBool("clearcutlist"))
return SetCutList(chanid, starttime, "");
if (cmdline.toBool("setcutlist"))
return SetCutList(chanid, starttime, cmdline.toString("setcutlist"));
if (cmdline.toBool("getcutlist"))
return GetMarkupList("cutlist", chanid, starttime);
if (cmdline.toBool("getskiplist"))
return GetMarkupList("commflag", chanid, starttime);
// TODO: check for matching jobid
// create temporary id to operate off of if not
if (cmdline.toBool("queue"))
QueueCommFlagJob(chanid, starttime, cmdline.toBool("rebuild"));
else if (cmdline.toBool("rebuild"))
result = RebuildSeekTable(chanid, starttime, -1);
else
result = FlagCommercials(chanid, starttime, -1,
cmdline.toString("outputfile"), true);
}
else if (cmdline.toBool("jobid"))
{
jobID = cmdline.toInt("jobid");
uint chanid;
//.........这里部分代码省略.........
示例4: main
int main(int argc, char *argv[])
{
int result = GENERIC_EXIT_OK;
// QString allStart = "19700101000000";
// QString allEnd = MythDate::current().toString("yyyyMMddhhmmss");
int jobType = JOB_NONE;
if (!cmdline.Parse(argc, argv))
{
cmdline.PrintHelp();
return GENERIC_EXIT_INVALID_CMDLINE;
}
if (cmdline.toBool("showhelp"))
{
cmdline.PrintHelp();
return GENERIC_EXIT_OK;
}
if (cmdline.toBool("showversion"))
{
cmdline.PrintVersion();
return GENERIC_EXIT_OK;
}
QCoreApplication a(argc, argv);
QCoreApplication::setApplicationName(MYTH_APPNAME_MYTHCOMMFLAG);
int retval = cmdline.ConfigureLogging("general",
!cmdline.toBool("noprogress"));
if (retval != GENERIC_EXIT_OK)
return retval;
CleanupGuard callCleanup(cleanup);
#ifndef _WIN32
QList<int> signallist;
signallist << SIGINT << SIGTERM << SIGSEGV << SIGABRT << SIGBUS << SIGFPE
<< SIGILL;
#if ! CONFIG_DARWIN
signallist << SIGRTMIN;
#endif
SignalHandler::Init(signallist);
signal(SIGHUP, SIG_IGN);
#endif
gContext = new MythContext(MYTH_BINARY_VERSION);
if (!gContext->Init( false, /*use gui*/
false, /*prompt for backend*/
false, /*bypass auto discovery*/
cmdline.toBool("skipdb"))) /*ignoreDB*/
{
LOG(VB_GENERAL, LOG_EMERG, "Failed to init MythContext, exiting.");
return GENERIC_EXIT_NO_MYTHCONTEXT;
}
cmdline.ApplySettingsOverride();
MythTranslation::load("mythfrontend");
if (cmdline.toBool("outputmethod"))
{
QString om = cmdline.toString("outputmethod");
if (outputTypes->contains(om))
outputMethod = outputTypes->value(om);
}
if (cmdline.toBool("chanid") && cmdline.toBool("starttime"))
{
// operate on a recording in the database
uint chanid = cmdline.toUInt("chanid");
QDateTime starttime = cmdline.toDateTime("starttime");
if (cmdline.toBool("clearskiplist"))
return ClearSkipList(chanid, starttime);
if (cmdline.toBool("gencutlist"))
return CopySkipListToCutList(chanid, starttime);
if (cmdline.toBool("clearcutlist"))
return SetCutList(chanid, starttime, "");
if (cmdline.toBool("setcutlist"))
return SetCutList(chanid, starttime, cmdline.toString("setcutlist"));
if (cmdline.toBool("getcutlist"))
return GetMarkupList("cutlist", chanid, starttime);
if (cmdline.toBool("getskiplist"))
return GetMarkupList("commflag", chanid, starttime);
// TODO: check for matching jobid
// create temporary id to operate off of if not
if (cmdline.toBool("queue"))
QueueCommFlagJob(chanid, starttime, cmdline.toBool("rebuild"));
else if (cmdline.toBool("rebuild"))
result = RebuildSeekTable(chanid, starttime, -1);
else
result = FlagCommercials(chanid, starttime, -1,
cmdline.toString("outputfile"), true);
}
else if (cmdline.toBool("jobid"))
{
jobID = cmdline.toInt("jobid");
uint chanid;
//.........这里部分代码省略.........
示例5: main
int main(int argc, char *argv[])
{
bool isVideo = false;
int result = GENERIC_EXIT_OK;
QString filename;
QString outputfilename = QString::null;
QDateTime starttime;
QString allStart = "19700101000000";
QString allEnd = QDateTime::currentDateTime().toString("yyyyMMddhhmmss");
int jobType = JOB_NONE;
QDir fullfile;
QString newCutList = QString::null;
if (!cmdline.Parse(argc, argv))
{
cmdline.PrintHelp();
return GENERIC_EXIT_INVALID_CMDLINE;
}
if (cmdline.toBool("showhelp"))
{
cmdline.PrintHelp();
return GENERIC_EXIT_OK;
}
if (cmdline.toBool("showversion"))
{
cmdline.PrintVersion();
return GENERIC_EXIT_OK;
}
QCoreApplication a(argc, argv);
QCoreApplication::setApplicationName(MYTH_APPNAME_MYTHCOMMFLAG);
int retval;
if ((retval = cmdline.ConfigureLogging(
"important general",
!cmdline.toBool("noprogress"))) != GENERIC_EXIT_OK)
return retval;
CleanupGuard callCleanup(cleanup);
gContext = new MythContext(MYTH_BINARY_VERSION);
if (!gContext->Init( false, /*use gui*/
false, /*prompt for backend*/
false, /*bypass auto discovery*/
cmdline.toBool("skipdb"))) /*ignoreDB*/
{
LOG(VB_GENERAL, LOG_EMERG, "Failed to init MythContext, exiting.");
return GENERIC_EXIT_NO_MYTHCONTEXT;
}
cmdline.ApplySettingsOverride();
MythTranslation::load("mythfrontend");
if (cmdline.toBool("chanid") && cmdline.toBool("starttime"))
{
// operate on a recording in the database
uint chanid = cmdline.toUInt("chanid");
QDateTime starttime = cmdline.toDateTime("starttime");
if (cmdline.toBool("clearskiplist"))
return ClearSkipList(chanid, starttime);
if (cmdline.toBool("gencutlist"))
return CopySkipListToCutList(chanid, starttime);
if (cmdline.toBool("clearcutlist"))
return SetCutList(chanid, starttime, "");
if (cmdline.toBool("setcutlist"))
return SetCutList(chanid, starttime, cmdline.toString("setcutlist"));
if (cmdline.toBool("getcutlist"))
return GetMarkupList("cutlist", chanid, starttime);
if (cmdline.toBool("getskiplist"))
return GetMarkupList("commflag", chanid, starttime);
// TODO: check for matching jobid
// create temporary id to operate off of if not
if (cmdline.toBool("queue"))
QueueCommFlagJob(chanid, starttime, cmdline.toBool("rebuild"));
else if (cmdline.toBool("rebuild"))
result = RebuildSeekTable(chanid, starttime, -1);
else
result = FlagCommercials(chanid, starttime, -1, "");
}
else if (cmdline.toBool("jobid"))
{
jobID = cmdline.toInt("jobid");
uint chanid;
QDateTime starttime;
if (!JobQueue::GetJobInfoFromID(jobID, jobType, chanid, starttime))
{
cerr << "mythcommflag: ERROR: Unable to find DB info for "
<< "JobQueue ID# " << jobID << endl;
return GENERIC_EXIT_NO_RECORDING_DATA;
}
inJobQueue = true;
force = true;
int jobQueueCPU = gCoreContext->GetNumSetting("JobQueueCPU", 0);
//.........这里部分代码省略.........