void MetadataFactory::VideoScan() { if (IsRunning()) return; QStringList hosts; if (!RemoteGetActiveBackends(&hosts)) { LOG(VB_GENERAL, LOG_WARNING, "Could not retrieve list of " "available backends."); return; } VideoScan(hosts); }
void VideoScanner::doScan(const QStringList &dirs) { if (m_scanThread->isRunning()) return; if (gCoreContext->HasGUI()) { MythScreenStack *popupStack = GetMythMainWindow()->GetStack("popup stack"); MythUIProgressDialog *progressDlg = new MythUIProgressDialog("", popupStack, "videoscanprogressdialog"); if (progressDlg->Create()) { popupStack->AddScreen(progressDlg, false); connect(m_scanThread->qthread(), SIGNAL(finished()), progressDlg, SLOT(Close())); connect(m_scanThread->qthread(), SIGNAL(finished()), SLOT(finishedScan())); } else { delete progressDlg; progressDlg = NULL; } m_scanThread->SetProgressDialog(progressDlg); } QStringList hosts; if (!RemoteGetActiveBackends(&hosts)) { LOG(VB_GENERAL, LOG_WARNING, "Could not retrieve list of " "available backends."); hosts.clear(); } m_scanThread->SetHosts(hosts); m_scanThread->SetDirs(dirs); m_scanThread->start(); }