vdr 2.8.3
cList< T > Class Template Reference

#include <tools.h>

Public Member Functions

 cList (const char *NeedsLocking=NULL)
const T * Get (int Index) const
const T * First (void) const
const T * Last (void) const
const T * Prev (const T *Object) const
const T * Next (const T *Object) const
T * Get (int Index)
T * First (void)
T * Last (void)
T * Prev (const T *Object)
T * Next (const T *Object)
Public Member Functions inherited from cListBase
virtual ~cListBase ()
bool Lock (cStateKey &StateKey, bool Write=false, int TimeoutMs=0) const
void SetSyncStateKey (cStateKey &StateKey)
void SetUseGarbageCollector (void)
void SetExplicitModify (void)
void SetModified (void)
void Add (cListObject *Object, cListObject *After=NULL)
void Ins (cListObject *Object, cListObject *Before=NULL)
void Del (cListObject *Object, bool DeleteObject=true)
virtual void Move (int From, int To)
void Move (cListObject *From, cListObject *To)
virtual void Clear (void)
bool Contains (const cListObject *Object) const
const cListObject * Get (int Index) const
cListObject * Get (int Index)
int Count (void) const
void Sort (void)

Additional Inherited Members

Protected Member Functions inherited from cListBase
 cListBase (const char *NeedsLocking=NULL)
Protected Attributes inherited from cListBase
cListObject * objects
cListObject * lastObject
int count
cStateLock stateLock
const char * needsLocking
bool useGarbageCollector

Detailed Description

template<class T>
class cList< T >

Definition at line 650 of file tools.h.

Constructor & Destructor Documentation

◆ cList()

template<class T>
cList< T >::cList ( const char * NeedsLocking = NULL)
inline

Sets up a new cList of the given type T.

If NeedsLocking is given, the list and any of its elements may only be accessed if the caller holds a lock obtained by a call to Lock() (see cListBase::Lock() for details). NeedsLocking is used as both a boolean flag to enable locking, and as a name to identify this list in debug output. It must be a static string and should be no longer than 10 characters. The string will not be copied!

Definition at line 652 of file tools.h.

References cListBase::cListBase().

Referenced by cConfig< T >::cConfig(), First(), Get(), Last(), Next(), and Prev().

Member Function Documentation

◆ First() [1/2]

template<class T>
T * cList< T >::First ( void )
inline

Non-const version of First().

Definition at line 674 of file tools.h.

References cList().

◆ First() [2/2]

template<class T>
const T * cList< T >::First ( void ) const
inline

Returns the first element in this list, or NULL if the list is empty.

Definition at line 662 of file tools.h.

References cListBase::objects.

Referenced by cDvbPlayer::Action(), cDvbSubtitleConverter::Action(), cRecordingsHandler::Action(), cSectionHandler::Action(), cCiCaProgramData::Active(), cPluginManager::Active(), cSectionHandler::Add(), cCaDescriptors::AddCaDescriptor(), cCamSlot::AddPid(), AddRecordingFolders(), cScanList::AddTransponders(), cCamSlot::BuildCaPmts(), cPluginManager::CallAllServices(), cPluginManager::CallFirstService(), CamControl(), cMenuSetupCAMItem::Changed(), cSchedule::Cleanup(), cHashBase::Clear(), cReplayControl::ClearEditingMarks(), cSchedule::ClrRunningStatus(), cMenuCommands::cMenuCommands(), cMenuSetupCAM::cMenuSetupCAM(), cMenuWhatsOn::cMenuWhatsOn(), cMenuEditFolder::Confirm(), cSkinDisplayReplay::cProgressBar::cProgressBar(), cSortedTimers::cSortedTimers(), cFilter::Del(), cHashBase::Del(), cSectionHandler::Del(), cRecordingsHandler::DelAll(), cChannels::DeleteDuplicateChannels(), cChannel::DelLinkChannel(), cDevice::DeviceHooksProvidesEIT(), cDevice::DeviceHooksProvidesTransponder(), cSchedule::DropOutdated(), cSchedule::Dump(), cTimer::Expired(), cPictureEntry::FirstPicture(), cHashBase::Get(), cRecordingsHandler::Get(), cDvbSubtitlePage::GetAreas(), cChannels::GetByChannelID(), cChannels::GetByServiceID(), cCaDescriptors::GetCaDescriptors(), cCaDescriptors::GetCaPids(), cDvbSubtitlePage::GetClutById(), cDevice::GetDevice(), cSchedule::GetEventAround(), cSchedule::GetFollowingEvent(), cPluginManager::GetNextWakeupPlugin(), cDvbSubtitleConverter::GetPageById(), cPluginManager::GetPlugin(), cSchedule::GetPresentEvent(), cDvbSubtitlePage::GetRegionById(), cRecordingsHandler::GetRequiredDiskSpaceMB(), cFreetypeFont::Glyph(), cPluginManager::InitializePlugins(), cCamSlot::IsDecrypting(), cCamSlot::KeepSharedCaPids(), cInterface::LearnKeys(), cTimers::Load(), cPluginManager::LoadPlugins(), main(), cPluginManager::MainThreadHook(), cFilter::Matches(), cStatus::MsgChannelChange(), cStatus::MsgChannelSwitch(), cStatus::MsgMarksModified(), cStatus::MsgOsdChannel(), cStatus::MsgOsdClear(), cStatus::MsgOsdCurrentItem(), cStatus::MsgOsdHelpKeys(), cStatus::MsgOsdItem(), cStatus::MsgOsdProgramme(), cStatus::MsgOsdStatusMessage(), cStatus::MsgOsdTextItem(), cStatus::MsgOsdTitle(), cStatus::MsgRecording(), cStatus::MsgReplaying(), cStatus::MsgSetAudioChannel(), cStatus::MsgSetAudioTrack(), cStatus::MsgSetSubtitleTrack(), cStatus::MsgSetVolume(), cStatus::MsgTimerChange(), cPictureControl::NextDirectory(), cCamSlots::NumReadyMasterSlots(), cPatFilter::NumSidRequests(), cCaDescriptors::operator==(), cPatFilter::PmtPidComplete(), cPatFilter::PmtPidReset(), cPatFilter::PmtVersionChanged(), cEITScanner::Process(), cNitFilter::Process(), cPatFilter::Process(), cMenuEditSrcItem::ProcessKey(), cPatFilter::Release(), cSubtitleRegion::Render(), cPatFilter::Request(), cSchedule::ResetVersions(), cConfig< T >::Save(), cDvbPlayer::Save(), cVideoDirectoryScannerThread::ScanVideoDir(), cMenuFolder::Set(), cMenuRecordings::Set(), cMenuSetupOSD::Set(), cPictureMenu::Set(), cTimer::SetEventFromSchedule(), cChannel::SetLinkChannels(), cCamSlot::SetPid(), cSchedule::SetRunningStatus(), cFilter::SetStatus(), cPatFilter::SetStatus(), cSectionHandler::SetStatus(), cTimer::SpawnPatternTimers(), cPluginManager::StartPlugins(), cCamSlots::WaitForAllCamSlotsReady(), cNestedItemList::Write(), and cSectionHandler::~cSectionHandler().

◆ Get() [1/2]

template<class T>
T * cList< T >::Get ( int Index)
inline

< Returns the element immediately following Object in this list, or NULL if Object is the last element in the list.

Object must not be NULL! Non-const version of Get().

Definition at line 672 of file tools.h.

References cList().

◆ Get() [2/2]

template<class T>
const T * cList< T >::Get ( int Index) const
inline

◆ Last() [1/2]

template<class T>
T * cList< T >::Last ( void )
inline

Non-const version of Last().

Definition at line 676 of file tools.h.

References cList().

◆ Last() [2/2]

template<class T>
const T * cList< T >::Last ( void ) const
inline

◆ Next() [1/2]

template<class T>
T * cList< T >::Next ( const T * Object)
inline

Non-const version of Next().

Definition at line 680 of file tools.h.

References cList().

◆ Next() [2/2]

template<class T>
const T * cList< T >::Next ( const T * Object) const
inline

< Returns the element immediately before Object in this list, or NULL if Object is the first element in the list.

Object must not be NULL!

Definition at line 669 of file tools.h.

Referenced by cDvbSubtitleConverter::Action(), cSectionHandler::Action(), cCiCaProgramData::Active(), cPluginManager::Active(), cSectionHandler::Add(), cCaDescriptors::AddCaDescriptor(), cCamSlot::AddPid(), AddRecordingFolders(), cScanList::AddTransponders(), cCamSlot::BuildCaPmts(), cPluginManager::CallAllServices(), cPluginManager::CallFirstService(), CamControl(), cMenuSetupCAMItem::Changed(), cHashBase::Clear(), cSchedule::ClrRunningStatus(), cMenuCommands::cMenuCommands(), cMenuSetupCAM::cMenuSetupCAM(), cMenuWhatsOn::cMenuWhatsOn(), cMenuEditFolder::Confirm(), cSkinDisplayReplay::cProgressBar::cProgressBar(), cSortedTimers::cSortedTimers(), cFilter::Del(), cHashBase::Del(), cSectionHandler::Del(), cRecordingsHandler::DelAll(), cChannels::DeleteDuplicateChannels(), cChannel::DelLinkChannel(), cDevice::DeviceHooksProvidesEIT(), cDevice::DeviceHooksProvidesTransponder(), cSchedule::DropOutdated(), cSchedule::Dump(), cReplayControl::EditTest(), cTimer::Expired(), cPictureEntry::FirstPicture(), cHashBase::Get(), cRecordingsHandler::Get(), cDvbSubtitlePage::GetAreas(), cChannels::GetByChannelID(), cChannels::GetByServiceID(), cCaDescriptors::GetCaDescriptors(), cCaDescriptors::GetCaPids(), cDvbSubtitlePage::GetClutById(), cDevice::GetDevice(), cSchedule::GetEventAround(), cSchedule::GetFollowingEvent(), cPluginManager::GetNextWakeupPlugin(), cDvbSubtitleConverter::GetPageById(), cPluginManager::GetPlugin(), cSchedule::GetPresentEvent(), cDvbSubtitlePage::GetRegionById(), cRecordingsHandler::GetRequiredDiskSpaceMB(), cFreetypeFont::Glyph(), cPluginManager::InitializePlugins(), cCamSlot::IsDecrypting(), cCamSlot::KeepSharedCaPids(), cInterface::LearnKeys(), cTimers::Load(), cPluginManager::LoadPlugins(), main(), cPluginManager::MainThreadHook(), cReplayControl::MarkMove(), cFilter::Matches(), cStatus::MsgChannelChange(), cStatus::MsgChannelSwitch(), cStatus::MsgMarksModified(), cStatus::MsgOsdChannel(), cStatus::MsgOsdClear(), cStatus::MsgOsdCurrentItem(), cStatus::MsgOsdHelpKeys(), cStatus::MsgOsdItem(), cStatus::MsgOsdProgramme(), cStatus::MsgOsdStatusMessage(), cStatus::MsgOsdTextItem(), cStatus::MsgOsdTitle(), cStatus::MsgRecording(), cStatus::MsgReplaying(), cStatus::MsgSetAudioChannel(), cStatus::MsgSetAudioTrack(), cStatus::MsgSetSubtitleTrack(), cStatus::MsgSetVolume(), cStatus::MsgTimerChange(), cPictureEntry::NextPicture(), cCamSlots::NumReadyMasterSlots(), cPatFilter::NumSidRequests(), cCaDescriptors::operator==(), cPatFilter::PmtPidComplete(), cPatFilter::PmtPidReset(), cPatFilter::PmtVersionChanged(), cEITScanner::Process(), cNitFilter::Process(), cPatFilter::Process(), cPatFilter::Release(), cSubtitleRegion::Render(), cPatFilter::Request(), cSchedule::ResetVersions(), cVideoDirectoryScannerThread::ScanVideoDir(), cMenuFolder::Set(), cMenuRecordings::Set(), cMenuSetupOSD::Set(), cPictureMenu::Set(), cTimer::SetEventFromSchedule(), cChannel::SetLinkChannels(), cCamSlot::SetPid(), cSchedule::SetRunningStatus(), cFilter::SetStatus(), cPatFilter::SetStatus(), cSectionHandler::SetStatus(), cTimer::SpawnPatternTimers(), cPluginManager::StartPlugins(), cPatFilter::SwitchToNextPmtPid(), cCamSlots::WaitForAllCamSlotsReady(), and cNestedItemList::Write().

◆ Prev() [1/2]

template<class T>
T * cList< T >::Prev ( const T * Object)
inline

Non-const version of Prev().

Definition at line 678 of file tools.h.

References cList().

◆ Prev() [2/2]


The documentation for this class was generated from the following file: