本文整理汇总了C++中MetadataLookup::SetDownloads方法的典型用法代码示例。如果您正苦于以下问题:C++ MetadataLookup::SetDownloads方法的具体用法?C++ MetadataLookup::SetDownloads怎么用?C++ MetadataLookup::SetDownloads使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MetadataLookup
的用法示例。
在下文中一共展示了MetadataLookup::SetDownloads方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: OnSearchListSelection
void EditMetadataDialog::OnSearchListSelection(ArtworkInfo info, VideoArtworkType type)
{
QString msg = tr("Downloading selected artwork...");
createBusyDialog(msg);
MetadataLookup *lookup = new MetadataLookup();
lookup->SetType(kMetadataVideo);
if (m_workingMetadata->GetSeason() > 0 ||
m_workingMetadata->GetEpisode() > 0)
lookup->SetSubtype(kProbableTelevision);
else if (m_workingMetadata->GetSubtitle().isEmpty())
lookup->SetSubtype(kProbableMovie);
else
lookup->SetSubtype(kUnknownVideo);
lookup->SetHost(m_workingMetadata->GetHost());
lookup->SetAutomatic(true);
lookup->SetData(qVariantFromValue<VideoArtworkType>(type));
ArtworkMap downloads;
downloads.insert(type, info);
lookup->SetDownloads(downloads);
lookup->SetAllowOverwrites(true);
lookup->SetTitle(m_workingMetadata->GetTitle());
lookup->SetSubtitle(m_workingMetadata->GetSubtitle());
lookup->SetSeason(m_workingMetadata->GetSeason());
lookup->SetEpisode(m_workingMetadata->GetEpisode());
lookup->SetInetref(m_workingMetadata->GetInetRef());
m_imageDownload->addDownloads(lookup);
}
示例2: StartGameImageSet
void GameUI::StartGameImageSet(MythGenericTree *node, QStringList coverart,
QStringList fanart, QStringList screenshot)
{
if (!node)
return;
RomInfo *metadata = qVariantValue<RomInfo *>(node->GetData());
if (!metadata)
return;
ArtworkMap map;
QString inetref = metadata->Inetref();
QString system = metadata->System();
QString title = metadata->Gamename();
if (metadata->Boxart().isEmpty() && coverart.size())
{
ArtworkInfo info;
info.url = coverart.takeAt(0).trimmed();
map.insert(kArtworkCoverart, info);
}
if (metadata->Fanart().isEmpty() && fanart.size())
{
ArtworkInfo info;
info.url = fanart.takeAt(0).trimmed();
map.insert(kArtworkFanart, info);
}
if (metadata->Screenshot().isEmpty() && screenshot.size())
{
ArtworkInfo info;
info.url = screenshot.takeAt(0).trimmed();
map.insert(kArtworkScreenshot, info);
}
MetadataLookup *lookup = new MetadataLookup();
lookup->SetTitle(metadata->Gamename());
lookup->SetSystem(metadata->System());
lookup->SetInetref(metadata->Inetref());
lookup->SetType(kMetadataGame);
lookup->SetDownloads(map);
lookup->SetData(qVariantFromValue(node));
m_imageDownload->addDownloads(lookup);
}
示例3: run
//.........这里部分代码省略.........
if (!exists || lookup->GetAllowOverwrites())
{
if (exists && !onMaster)
{
QFileInfo fi(finalfile);
GetMythUI()->RemoveFromCacheByFile(fi.fileName());
RemoteFile::DeleteFile(finalfile);
}
else if (exists)
QFile::remove(resolvedFN);
LOG(VB_GENERAL, LOG_INFO,
QString("Metadata Image Download: %1 -> %2")
.arg(oldurl).arg(finalfile));
QByteArray *download = new QByteArray();
GetMythDownloadManager()->download(oldurl, download);
QImage testImage;
bool didLoad = testImage.loadFromData(*download);
if (!didLoad)
{
LOG(VB_GENERAL, LOG_ERR,
QString("Tried to write %1, but it appears to be "
"an HTML redirect or corrupt file "
"(filesize %2).")
.arg(oldurl).arg(download->size()));
delete download;
download = NULL;
QCoreApplication::postEvent(m_parent,
new ImageDLFailureEvent(lookup));
continue;
}
if (!onMaster)
{
RemoteFile *outFile = new RemoteFile(finalfile, true);
if (!outFile->isOpen())
{
LOG(VB_GENERAL, LOG_ERR,
QString("Image Download: Failed to open "
"remote file (%1) for write. Does "
"Storage Group Exist?")
.arg(finalfile));
delete outFile;
outFile = NULL;
QCoreApplication::postEvent(m_parent,
new ImageDLFailureEvent(lookup));
}
else
{
off_t written = outFile->Write(*download,
download->size());
if (written != download->size())
{
LOG(VB_GENERAL, LOG_ERR,
QString("Image Download: Error Writing Image "
"to file: %1").arg(finalfile));
QCoreApplication::postEvent(m_parent,
new ImageDLFailureEvent(lookup));
}
else
downloaded.insert(type, info);
delete outFile;
outFile = NULL;
}
}
else
{
QFile dest_file(resolvedFN);
if (dest_file.open(QIODevice::WriteOnly))
{
off_t size = dest_file.write(*download,
download->size());
if (size != download->size())
{
LOG(VB_GENERAL, LOG_ERR,
QString("Image Download: Error Writing Image "
"to file: %1").arg(finalfile));
QCoreApplication::postEvent(m_parent,
new ImageDLFailureEvent(lookup));
}
else
downloaded.insert(type, info);
}
}
delete download;
}
else
downloaded.insert(type, info);
}
}
lookup->SetDownloads(downloaded);
QCoreApplication::postEvent(m_parent, new ImageDLEvent(lookup));
}
RunEpilog();
}
示例4: run
//.........这里部分代码省略.........
{
VERBOSE(VB_IMPORTANT,QString("Tried to write %1, "
"but it appears to be an HTML redirect "
"(filesize %2).")
.arg(oldurl).arg(download->size()));
delete download;
download = NULL;
continue;
}
if (dest_file.open(QIODevice::WriteOnly))
{
off_t size = dest_file.write(*download, download->size());
if (size != download->size())
{
VERBOSE(VB_IMPORTANT,
QString("Image Download: Error Writing Image "
"to file: %1").arg(finalfile));
}
else
downloaded.insert(type, info);
}
delete download;
}
else
downloaded.insert(type, info);
}
else
{
QString path = getStorageGroupURL(type, lookup->GetHost());
QString finalfile = path + filename;
QString oldurl = info.url;
info.url = finalfile;
if (!RemoteFile::Exists(finalfile) || lookup->GetAllowOverwrites())
{
if (RemoteFile::Exists(finalfile))
{
QFileInfo fi(finalfile);
GetMythUI()->RemoveFromCacheByFile(fi.fileName());
RemoteFile::DeleteFile(finalfile);
}
VERBOSE(VB_GENERAL,
QString("Metadata Image Download: %1 -> %2")
.arg(oldurl).arg(finalfile));
QByteArray *download = new QByteArray();
GetMythDownloadManager()->download(oldurl, download);
QImage testImage;
bool didLoad = testImage.loadFromData(*download);
if (!didLoad)
{
VERBOSE(VB_IMPORTANT,QString("Tried to write %1, "
"but it appears to be an HTML redirect "
"or corrupt file (filesize %2).")
.arg(oldurl).arg(download->size()));
delete download;
download = NULL;
continue;
}
RemoteFile *outFile = new RemoteFile(finalfile, true);
if (!outFile->isOpen())
{
VERBOSE(VB_IMPORTANT,
QString("Image Download: Failed to open "
"remote file (%1) for write. Does "
"Storage Group Exist?")
.arg(finalfile));
delete outFile;
outFile = NULL;
}
else
{
off_t written = outFile->Write(*download,
download->size());
if (written != download->size())
{
VERBOSE(VB_IMPORTANT,
QString("Image Download: Error Writing Image "
"to file: %1").arg(finalfile));
}
else
downloaded.insert(type, info);
delete outFile;
outFile = NULL;
}
delete download;
}
else
downloaded.insert(type, info);
}
}
lookup->SetDownloads(downloaded);
QCoreApplication::postEvent(m_parent, new ImageDLEvent(lookup));
}
}