int CPVREpgContainer::GetEPGNext(CFileItemList* results, bool bRadio) { CPVRChannelGroup *channels = (CPVRChannelGroup *) CPVRManager::GetChannelGroups()->GetGroupAll(bRadio); CSingleLock lock(m_critSection); int iInitialSize = results->Size(); for (unsigned int iChannelPtr = 0; iChannelPtr < channels->Size(); iChannelPtr++) { CPVRChannel *channel = (CPVRChannel *) channels->GetByIndex(iChannelPtr); CPVREpg *epg = channel->GetEPG(); if (!epg->HasValidEntries()) continue; const CPVREpgInfoTag *epgNext = (CPVREpgInfoTag *) epg->InfoTagNext(); if (!epgNext) continue; CFileItemPtr entry(new CFileItem(*epgNext)); entry->SetLabel2(epgNext->Start().GetAsLocalizedTime("", false)); entry->m_strPath = channel->ChannelName(); entry->SetThumbnailImage(channel->IconPath()); results->Add(entry); } return results->Size() - iInitialSize; }
CPVRChannelGroup::CPVRChannelGroup(const CPVRChannelGroup &group) { m_bRadio = group.m_bRadio; m_iGroupId = group.m_iGroupId; m_strGroupName = group.m_strGroupName; m_bLoaded = group.m_bLoaded; m_bChanged = group.m_bChanged; m_bUsingBackendChannelOrder = group.m_bUsingBackendChannelOrder; m_bUsingBackendChannelNumbers = group.m_bUsingBackendChannelNumbers; for (int iPtr = 0; iPtr < group.Size(); iPtr++) push_back(group.at(iPtr)); }
CPVRChannelGroup::CPVRChannelGroup(const CPVRChannelGroup &group) { m_bRadio = group.m_bRadio; m_iGroupType = group.m_iGroupType; m_iGroupId = group.m_iGroupId; m_strGroupName = group.m_strGroupName; m_bLoaded = group.m_bLoaded; m_bChanged = group.m_bChanged; m_bUsingBackendChannelOrder = group.m_bUsingBackendChannelOrder; m_bUsingBackendChannelNumbers = group.m_bUsingBackendChannelNumbers; m_iLastWatched = group.m_iLastWatched; m_bHidden = group.m_bHidden; for (int iPtr = 0; iPtr < group.Size(); iPtr++) m_members.push_back(group.m_members.at(iPtr)); }