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


C++ CPVRTimerInfoTagPtr::ChannelTag方法代码示例

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


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

示例1: FilterTimers

int EpgSearchFilter::FilterTimers(CFileItemList &results)
{
    int iRemoved(0);
    if (!g_PVRManager.IsStarted())
        return iRemoved;

    std::vector<CFileItemPtr> timers = g_PVRTimers->GetActiveTimers();
    // TODO inefficient!
    for (unsigned int iTimerPtr = 0; iTimerPtr < timers.size(); iTimerPtr++)
    {
        CFileItemPtr fileItem = timers.at(iTimerPtr);
        if (!fileItem || !fileItem->HasPVRTimerInfoTag())
            continue;

        CPVRTimerInfoTagPtr timer = fileItem->GetPVRTimerInfoTag();
        if (!timer)
            continue;

        for (int iResultPtr = 0; iResultPtr < results.Size(); iResultPtr++)
        {
            const CEpgInfoTagPtr epgentry(results.Get(iResultPtr)->GetEPGInfoTag());
            if (!epgentry ||
                    *epgentry->ChannelTag() != *timer->ChannelTag() ||
                    epgentry->StartAsUTC()   <  timer->StartAsUTC() ||
                    epgentry->EndAsUTC()     >  timer->EndAsUTC())
                continue;

            results.Remove(iResultPtr);
            iResultPtr--;
            ++iRemoved;
        }
    }

    return iRemoved;
}
开发者ID:ncvann,项目名称:xbmc,代码行数:35,代码来源:EpgSearchFilter.cpp

示例2: channel

std::vector<CEpgInfoTagPtr> CEpgContainer::GetEpgTagsForTimer(const CPVRTimerInfoTagPtr &timer) const
{
    CPVRChannelPtr channel(timer->ChannelTag());

    if (!channel)
        channel = timer->UpdateChannel();

    if (channel)
    {
        const CEpgPtr epg(channel->GetEPG());
        if (epg)
            return epg->GetTagsBetween(timer->StartAsUTC(), timer->EndAsUTC());
    }
    return std::vector<CEpgInfoTagPtr>();
}
开发者ID:RodrigoHahn,项目名称:xbmc,代码行数:15,代码来源:EpgContainer.cpp


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