当前位置: 首页>>代码示例>>C++>>正文


C++ QueueItemPtr::getSources方法代码示例

本文整理汇总了C++中QueueItemPtr::getSources方法的典型用法代码示例。如果您正苦于以下问题:C++ QueueItemPtr::getSources方法的具体用法?C++ QueueItemPtr::getSources怎么用?C++ QueueItemPtr::getSources使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在QueueItemPtr的用法示例。


在下文中一共展示了QueueItemPtr::getSources方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: on

void DirectoryListingManager::on(QueueManagerListener::ItemRemoved, const QueueItemPtr& qi, bool aFinished) noexcept {
	if (!qi->isSet(QueueItem::FLAG_USER_LIST))
		return;

	auto u = qi->getSources()[0].getUser();
	if (qi->isSet(QueueItem::FLAG_DIRECTORY_DOWNLOAD) && !aFinished)
		removeDirectoryDownload(u, qi->getTempTarget(), qi->isSet(QueueItem::FLAG_PARTIAL_LIST));

	if (qi->isSet(QueueItem::FLAG_CLIENT_VIEW)) {
		DirectoryListingPtr dl = nullptr;

		{
			RLock l(cs);
			auto p = viewedLists.find(u);
			if (p == viewedLists.end()) {
				dcassert(0);
				return;
			}

			dl = p->second;
		}

		dl->onListRemovedQueue(qi->getTarget(), qi->getTempTarget(), aFinished);

		bool closing = (dl->getClosing() || !dl->hasCompletedDownloads());
		if (!aFinished && !dl->hasDownloads() && closing) {
			removeList(u);
		}
	}
}
开发者ID:Nordanvind,项目名称:airgit,代码行数:30,代码来源:DirectoryListingManager.cpp

示例2: addQI

void UserQueue::addQI(QueueItemPtr& qi, bool newBundle /*false*/) noexcept {
	for(const auto& i: qi->getSources()) {
		addQI(qi, i.getUser(), newBundle);
	}
}
开发者ID:Nordanvind,项目名称:airgit,代码行数:5,代码来源:UserQueue.cpp

示例3: removeQI

void UserQueue::removeQI(QueueItemPtr& qi, bool removeRunning /*true*/) noexcept{
	for(const auto& i: qi->getSources()) {
		removeQI(qi, i.getUser(), removeRunning, 0);
	}
}
开发者ID:Nordanvind,项目名称:airgit,代码行数:5,代码来源:UserQueue.cpp

示例4: addQI

void UserQueue::addQI(QueueItemPtr& qi) noexcept {
	for(const auto& i: qi->getSources()) {
		addQI(qi, i.getUser());
	}
}
开发者ID:Caraul,项目名称:airgit,代码行数:5,代码来源:UserQueue.cpp

示例5: addQI

void UserQueue::addQI(QueueItemPtr& qi, bool newBundle /*false*/) {
	for(auto i: qi->getSources()) {
		addQI(qi, i.getUser(), newBundle);
	}
}
开发者ID:BackupTheBerlios,项目名称:airdc-svn,代码行数:5,代码来源:UserQueue.cpp

示例6: removeQI

void UserQueue::removeQI(QueueItemPtr& qi, bool removeRunning /*true*/, bool fireSources /*true*/) {
	for(auto i: qi->getSources()) {
		removeQI(qi, i.getUser(), removeRunning, false, fireSources);
	}
}
开发者ID:BackupTheBerlios,项目名称:airdc-svn,代码行数:5,代码来源:UserQueue.cpp


注:本文中的QueueItemPtr::getSources方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。