cSchedules Class Reference

#include <epg.h>

Inheritance diagram for cSchedules:

Inheritance graph
Collaboration diagram for cSchedules:

Collaboration graph

List of all members.

Public Member Functions

cScheduleAddSchedule (tChannelID ChannelID)
const cScheduleGetSchedule (tChannelID ChannelID) const
const cScheduleGetSchedule (const cChannel *Channel, bool AddIfMissing=false) const

Static Public Member Functions

static void SetEpgDataFileName (const char *FileName)
static const cSchedulesSchedules (cSchedulesLock &SchedulesLock)
static time_t Modified (void)
static void SetModified (cSchedule *Schedule)
static void Cleanup (bool Force=false)
static void ResetVersions (void)
static bool ClearAll (void)
static bool Dump (FILE *f, const char *Prefix="", eDumpMode DumpMode=dmAll, time_t AtTime=0)
static bool Read (FILE *f=NULL)

Private Attributes

cRwLock rwlock

Static Private Attributes

static cSchedules schedules
static const char * epgDataFileName = NULL
static time_t lastCleanup = time(NULL)
static time_t lastDump = time(NULL)
static time_t modified = 0


class cSchedule
class cSchedulesLock

Detailed Description

Definition at line 162 of file epg.h.

Member Function Documentation

void cSchedules::SetEpgDataFileName ( const char *  FileName  )  [static]

Definition at line 935 of file epg.c.

References epgDataFileName.

Referenced by main().

const cSchedules * cSchedules::Schedules ( cSchedulesLock SchedulesLock  )  [static]

Caller must provide a cSchedulesLock which has to survive the entire time the returned cSchedules is accessed. Once the cSchedules is no longer used, the cSchedulesLock must be destroyed.

Definition at line 930 of file epg.c.

References cSchedulesLock::Locked(), and schedules.

Referenced by Cleanup(), ClearAll(), cSVDRP::CmdCLRE(), cSVDRP::CmdLSTE(), cMenuSchedule::cMenuSchedule(), cRecordControl::cRecordControl(), cDisplayChannel::DisplayInfo(), Dump(), cRecordControl::GetEvent(), main(), cEitFilter::Process(), Read(), ResetVersions(), cTimer::SetEventFromSchedule(), cTimers::SetEvents(), and SetTrackDescriptions().

Here is the call graph for this function:

static time_t cSchedules::Modified ( void   )  [inline, static]

Definition at line 178 of file epg.h.

References modified.

Referenced by cTimers::SetEvents().

void cSchedules::SetModified ( cSchedule Schedule  )  [static]

Definition at line 941 of file epg.c.

References modified, and cSchedule::SetModified().

Referenced by cEIT::cEIT(), and cSchedule::Read().

Here is the call graph for this function:

void cSchedules::Cleanup ( bool  Force = false  )  [static]

void cSchedules::ResetVersions ( void   )  [static]

Definition at line 978 of file epg.c.

References cList< T >::First(), cList< T >::Next(), ResetVersions(), and Schedules().

Referenced by cMenuSetupEPG::ProcessKey(), and ResetVersions().

Here is the call graph for this function:

bool cSchedules::ClearAll ( void   )  [static]

Definition at line 988 of file epg.c.

References Cleanup(), cList< T >::First(), cList< T >::Next(), Schedules(), and Timers.

Referenced by cSVDRP::CmdCLRE().

Here is the call graph for this function:

bool cSchedules::Dump ( FILE *  f,
const char *  Prefix = "",
eDumpMode  DumpMode = dmAll,
time_t  AtTime = 0 
) [static]

Definition at line 1002 of file epg.c.

References Dump(), cList< T >::First(), cList< T >::Next(), and Schedules().

Referenced by Cleanup(), cSVDRP::CmdLSTE(), and Dump().

Here is the call graph for this function:

bool cSchedules::Read ( FILE *  f = NULL  )  [static]

Definition at line 1014 of file epg.c.

References Channels, dsyslog, epgDataFileName, cList< T >::First(), GetSchedule(), LOG_ERROR, cList< T >::Next(), cSchedule::Read(), and Schedules().

Referenced by main(), and cPUTEhandler::Process().

Here is the call graph for this function:

cSchedule * cSchedules::AddSchedule ( tChannelID  ChannelID  ) 

Definition at line 1044 of file epg.c.

References cListBase::Add(), Channels, tChannelID::ClrRid(), cSchedule, cChannels::GetByChannelID(), GetSchedule(), and cChannel::schedule.

Referenced by cSchedule::Read().

Here is the call graph for this function:

const cSchedule * cSchedules::GetSchedule ( tChannelID  ChannelID  )  const

const cSchedule * cSchedules::GetSchedule ( const cChannel Channel,
bool  AddIfMissing = false 
) const

Definition at line 1068 of file epg.c.

References cSchedule, cChannel::GetChannelID(), GetSchedule(), tChannelID::InvalidID, and cChannel::schedule.

Here is the call graph for this function:

Friends And Related Function Documentation

friend class cSchedule [friend]

Definition at line 163 of file epg.h.

Referenced by AddSchedule(), and GetSchedule().

friend class cSchedulesLock [friend]

Definition at line 164 of file epg.h.

Member Data Documentation

Definition at line 166 of file epg.h.

Referenced by cSchedulesLock::cSchedulesLock(), and cSchedulesLock::~cSchedulesLock().

cSchedules cSchedules::schedules [static, private]

const char * cSchedules::epgDataFileName = NULL [static, private]

Definition at line 168 of file epg.h.

Referenced by Cleanup(), Read(), and SetEpgDataFileName().

time_t cSchedules::lastCleanup = time(NULL) [static, private]

Definition at line 169 of file epg.h.

Referenced by Cleanup().

time_t cSchedules::lastDump = time(NULL) [static, private]

Definition at line 170 of file epg.h.

Referenced by Cleanup().

time_t cSchedules::modified = 0 [static, private]

Definition at line 171 of file epg.h.

Referenced by Modified(), and SetModified().

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

Generated on Tue Jan 13 14:31:56 2009 for VDR by  doxygen 1.5.6