vdr
2.0.6
|
#include <recording.h>
Public Member Functions | |
cRecordings (bool Deleted=false) | |
virtual | ~cRecordings () |
bool | Load (void) |
bool | Update (bool Wait=false) |
void | TouchUpdate (void) |
bool | NeedsUpdate (void) |
void | ChangeState (void) |
bool | StateChanged (int &State) |
void | ResetResume (const char *ResumeFileName=NULL) |
void | ClearSortNames (void) |
cRecording * | GetByName (const char *FileName) |
void | AddByName (const char *FileName, bool TriggerUpdate=true) |
void | DelByName (const char *FileName, bool RemoveRecording=true) |
void | UpdateByName (const char *FileName) |
int | TotalFileSizeMB (void) |
double | MBperMinute (void) |
![]() | |
cRecording * | Get (int Index) const |
cRecording * | First (void) const |
cRecording * | Last (void) const |
cRecording * | Prev (const cRecording *object) const |
cRecording * | Next (const cRecording *object) const |
![]() | |
virtual | ~cListBase () |
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) |
cListObject * | Get (int Index) const |
int | Count (void) const |
void | Sort (void) |
![]() | |
cThread (const char *Description=NULL, bool LowPriority=false) | |
virtual | ~cThread () |
void | SetDescription (const char *Description,...) __attribute__((format(printf |
void bool | Start (void) |
bool | Active (void) |
Protected Member Functions | |
void | Action (void) |
![]() | |
cListBase (void) | |
![]() | |
void | SetPriority (int Priority) |
void | SetIOPriority (int Priority) |
void | Lock (void) |
void | Unlock (void) |
bool | Running (void) |
void | Cancel (int WaitSeconds=0) |
Private Member Functions | |
const char * | UpdateFileName (void) |
void | Refresh (bool Foreground=false) |
void | ScanVideoDir (const char *DirName, bool Foreground=false, int LinkLevel=0, int DirLevel=0) |
Private Attributes | |
bool | deleted |
bool | initial |
time_t | lastUpdate |
int | state |
Static Private Attributes | |
static char * | updateFileName = NULL |
Additional Inherited Members | |
![]() | |
static tThreadId | ThreadId (void) |
static tThreadId | IsMainThread (void) |
static void | SetMainThreadId (void) |
![]() | |
cListObject * | objects |
cListObject * | lastObject |
int | count |
Definition at line 161 of file recording.h.
cRecordings::cRecordings | ( | bool | Deleted = false | ) |
Definition at line 1259 of file recording.c.
References deleted, initial, lastUpdate, and state.
|
virtual |
Definition at line 1268 of file recording.c.
References cThread::Cancel().
|
protectedvirtual |
void cRecordings::AddByName | ( | const char * | FileName, |
bool | TriggerUpdate = true |
||
) |
Definition at line 1401 of file recording.c.
References cListBase::Add(), ChangeState(), GetByName(), LOCK_THREAD, and TouchUpdate().
Referenced by cCopyingThread::Action(), cRecordControl::cRecordControl(), and cCutter::Start().
|
inline |
Definition at line 191 of file recording.h.
References state.
Referenced by AddByName(), DelByName(), Refresh(), ResetResume(), and ScanVideoDir().
void cRecordings::ClearSortNames | ( | void | ) |
Definition at line 1486 of file recording.c.
References cList< cRecording >::First(), LOCK_THREAD, and cList< cRecording >::Next().
Referenced by cMenuSetupOSD::ProcessKey().
void cRecordings::DelByName | ( | const char * | FileName, |
bool | RemoveRecording = true |
||
) |
Definition at line 1414 of file recording.c.
References cListBase::Add(), ChangeState(), cListBase::Del(), cRecording::deleted, DeletedRecordings(), DELEXT, cRecording::fileName, cRecording::FileName(), GetByName(), LOCK_THREAD, and TouchUpdate().
Referenced by cCopyingThread::Action(), cSVDRP::CmdDELR(), cMenuRecordings::Delete(), cFileTransfer::Stop(), cCutter::Stop(), and cReplayControl::Stop().
cRecording * cRecordings::GetByName | ( | const char * | FileName | ) |
Definition at line 1389 of file recording.c.
References cList< cRecording >::First(), LOCK_THREAD, and cList< cRecording >::Next().
Referenced by cCopyingThread::Action(), AddByName(), cMenuTimers::Commands(), DelByName(), cMenuRecordings::Delete(), cReplayControl::GetInfo(), cReplayControl::GetRecording(), cReplayControl::LastReplayed(), ScanVideoDir(), SetTrackDescriptions(), cReplayControl::ShowProgress(), cReplayControl::Stop(), and UpdateByName().
|
inline |
Loads the current list of recordings and returns true if there is anything in it (for compatibility with older plugins - use Update(true) instead).
Definition at line 176 of file recording.h.
References Update().
Referenced by cMenuTimers::Commands().
double cRecordings::MBperMinute | ( | void | ) |
Returns the average data rate (in MB/min) of all recordings, or -1 if this value is unknown.
Definition at line 1456 of file recording.c.
References cList< cRecording >::First(), LOCK_THREAD, and cList< cRecording >::Next().
Referenced by cVideoDiskUsage::HasChanged().
bool cRecordings::NeedsUpdate | ( | void | ) |
Definition at line 1370 of file recording.c.
References LastModifiedTime(), lastUpdate, and UpdateFileName().
Referenced by main(), and TouchUpdate().
|
private |
Definition at line 1285 of file recording.c.
References ChangeState(), cListBase::Clear(), lastUpdate, cThread::Lock(), ScanVideoDir(), cThread::Unlock(), and VideoDirectory.
void cRecordings::ResetResume | ( | const char * | ResumeFileName = NULL | ) |
Definition at line 1476 of file recording.c.
References ChangeState(), cList< cRecording >::First(), LOCK_THREAD, and cList< cRecording >::Next().
Referenced by cResumeFile::Delete(), cResumeFile::Save(), and cMenuSetupReplay::Store().
|
private |
Definition at line 1295 of file recording.c.
References cListBase::Add(), AddDirectory(), ChangeState(), cListBase::Del(), cRecording::deleted, deleted, DELEXT, endswith(), cRecording::FileName(), cRecording::FileSizeMB(), cList< cRecording >::First(), GetByName(), initial, cRecording::IsOnVideoDirectoryFileSystem(), isyslog, cThread::Lock(), MAX_LINK_LEVEL, cRecording::Name(), cReadDir::Next(), cList< cRecording >::Next(), cRecording::NumFrames(), RECEXT, cThread::Running(), and cThread::Unlock().
Referenced by Refresh().
bool cRecordings::StateChanged | ( | int & | State | ) |
Definition at line 1354 of file recording.c.
References state.
Referenced by cMenuRecordings::cMenuRecordings(), and cMenuRecordings::ProcessKey().
int cRecordings::TotalFileSizeMB | ( | void | ) |
Definition at line 1444 of file recording.c.
References cList< cRecording >::First(), LOCK_THREAD, and cList< cRecording >::Next().
Referenced by VideoDiskSpace().
void cRecordings::TouchUpdate | ( | void | ) |
Touches the '.update' file in the video directory, so that other instances of VDR that access the same video directory can be triggered to update their recordings list.
Definition at line 1362 of file recording.c.
References lastUpdate, NeedsUpdate(), TouchFile(), and UpdateFileName().
Referenced by cCopyingThread::Action(), cCuttingThread::Action(), AddByName(), and DelByName().
bool cRecordings::Update | ( | bool | Wait = false | ) |
Triggers an update of the list of recordings, which will run as a separate thread if Wait is false.
If Wait is true, the function returns only after the update has completed. Returns true if Wait is true and there is anything in the list of recordings, false otherwise.
Definition at line 1378 of file recording.c.
References cListBase::Count(), Refresh(), and cThread::Start().
Referenced by AssertFreeDiskSpace(), cSVDRP::CmdLSTR(), cSVDRP::CmdUPDR(), Load(), and main().
void cRecordings::UpdateByName | ( | const char * | FileName | ) |
Definition at line 1436 of file recording.c.
References GetByName(), LOCK_THREAD, and cRecording::ReadInfo().
Referenced by cRecorder::Action(), cCopyingThread::Action(), and cIndexFileGenerator::Action().
|
private |
Definition at line 1278 of file recording.c.
References AddDirectory(), updateFileName, and VideoDirectory.
Referenced by NeedsUpdate(), and TouchUpdate().
|
private |
Definition at line 164 of file recording.h.
Referenced by cRecordings(), and ScanVideoDir().
|
private |
Definition at line 165 of file recording.h.
Referenced by cRecordings(), and ScanVideoDir().
|
private |
Definition at line 166 of file recording.h.
Referenced by cRecordings(), NeedsUpdate(), Refresh(), and TouchUpdate().
|
private |
Definition at line 167 of file recording.h.
Referenced by ChangeState(), cRecordings(), and StateChanged().
|
staticprivate |
Definition at line 163 of file recording.h.
Referenced by UpdateFileName().