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


C++ CFileItem::IsActive方法代码示例

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


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

示例1: GetIdleChild

CFileItem* CServerItem::GetIdleChild(bool immediateOnly, enum TransferDirection direction)
{
	int i = 0;
	for (i = (PRIORITY_COUNT - 1); i >= 0; i--)
	{
		std::list<CFileItem*>& fileList = m_fileList[1][i];
		for (std::list<CFileItem*>::iterator iter = fileList.begin(); iter != fileList.end(); iter++)
		{
			CFileItem* item = *iter;
			if (item->IsActive())
				continue;

			if (direction == both)
				return item;

			if (direction == download)
			{
				if (item->Download())
					return item;
			}
			else if (!item->Download())
				return item;
		}
	}
	if (immediateOnly)
		return 0;

	for (i = (PRIORITY_COUNT - 1); i >= 0; i--)
	{
		std::list<CFileItem*>& fileList = m_fileList[0][i];
		for (std::list<CFileItem*>::iterator iter = fileList.begin(); iter != fileList.end(); iter++)
		{
			CFileItem* item = *iter;
			if (item->IsActive())
				continue;

			if (direction == both)
				return item;

			if (direction == download)
			{
				if (item->Download())
					return item;
			}
			else if (!item->Download())
				return item;
		}
	}

	return 0;
}
开发者ID:ErichKrause,项目名称:filezilla,代码行数:51,代码来源:queue.cpp

示例2: QueueImmediateFiles

void CServerItem::QueueImmediateFiles()
{
    for (int i = 0; i < static_cast<int>(QueuePriority::count); ++i) {
        std::deque<CFileItem*> activeList;
        std::deque<CFileItem*>& fileList = m_fileList[1][i];
        for (auto iter = fileList.rbegin(); iter != fileList.rend(); ++iter) {
            CFileItem* item = *iter;
            wxASSERT(!item->queued());
            if (item->IsActive())
                activeList.push_front(item);
            else {
                item->set_queued(true);
                m_fileList[0][i].push_front(item);
            }
        }
        std::swap(fileList, activeList);
    }
}
开发者ID:comutt,项目名称:FileZilla3,代码行数:18,代码来源:queue.cpp

示例3: QueueImmediateFiles

void CServerItem::QueueImmediateFiles()
{
	for (int i = 0; i < PRIORITY_COUNT; i++)
	{
		std::list<CFileItem*> activeList;
		std::list<CFileItem*>& fileList = m_fileList[1][i];
		for (std::list<CFileItem*>::reverse_iterator iter = fileList.rbegin(); iter != fileList.rend(); iter++)
		{
			CFileItem* item = *iter;
			wxASSERT(!item->m_queued);
			if (item->IsActive())
				activeList.push_front(item);
			else
			{
				item->m_queued = true;
				m_fileList[0][i].push_front(item);
			}
		}
		fileList = activeList;
	}
}
开发者ID:ErichKrause,项目名称:filezilla,代码行数:21,代码来源:queue.cpp


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