vdr 2.6.9
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 cListObjectGet (int Index) const
 
cListObjectGet (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
cListObjectobjects
 
cListObjectlastObject
 
int count
 
cStateLock stateLock
 
const char * needsLocking
 
bool useGarbageCollector
 

Detailed Description

template<class T>
class cList< T >

Definition at line 644 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 646 of file tools.h.

Member Function Documentation

◆ First() [1/2]

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

Non-const version of First().

Definition at line 668 of file tools.h.

References cList< T >::First().

◆ 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 656 of file tools.h.

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(), cList< T >::First(), 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(), cSchedule::Sort(), cTimer::SpawnPatternTimers(), cPluginManager::StartPlugins(), cCamSlots::WaitForAllCamSlotsReady(), 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 666 of file tools.h.

References cList< T >::Get().

◆ 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 670 of file tools.h.

References cList< T >::Last().

◆ Last() [2/2]

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

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

Definition at line 658 of file tools.h.

Referenced by cList< T >::Last(), cPictureEntry::LastPicture(), cPictureControl::NextDirectory(), cMenuEditSrcItem::ProcessKey(), cInterface::QueryKeys(), cPluginManager::Shutdown(), and cPluginManager::StopPlugins().

◆ Next() [1/2]

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

Non-const version of Next().

Definition at line 674 of file tools.h.

References cList< T >::Next().

◆ 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 663 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(), 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(), cList< T >::Next(), 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(), cSchedule::Sort(), cTimer::SpawnPatternTimers(), cPluginManager::StartPlugins(), cPatFilter::SwitchToNextPmtPid(), and cCamSlots::WaitForAllCamSlotsReady().

◆ Prev() [1/2]

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

Non-const version of Prev().

Definition at line 672 of file tools.h.

References cList< T >::Prev().

◆ Prev() [2/2]

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

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