vdr 2.7.4
|
#include <recording.h>
Public Member Functions | |
cMarks (void) | |
bool | Load (const char *RecordingFileName, double FramesPerSecond=DEFAULTFRAMESPERSECOND, bool IsPesRecording=false) |
bool | Update (void) |
bool | Save (void) |
void | Align (void) |
void | Sort (void) |
void | Add (int Position) |
const cMark * | Get (int Position) const |
const cMark * | GetPrev (int Position) const |
const cMark * | GetNext (int Position) const |
const cMark * | GetNextBegin (const cMark *EndMark=NULL) const |
const cMark * | GetNextEnd (const cMark *BeginMark) const |
int | GetNumSequences (void) const |
int | GetFrameAfterEdit (int Frame, int LastFrame) const |
cMark * | Get (int Position) |
cMark * | GetPrev (int Position) |
cMark * | GetNext (int Position) |
cMark * | GetNextBegin (const cMark *EndMark=NULL) |
cMark * | GetNextEnd (const cMark *BeginMark) |
![]() | |
cConfig (const char *NeedsLocking=NULL) | |
virtual | ~cConfig () |
const char * | FileName (void) |
bool | Load (const char *FileName=NULL, bool AllowComments=false, bool MustExist=false) |
bool | Save (void) const |
![]() | |
cList (const char *NeedsLocking=NULL) | |
const cMark * | Get (int Index) const |
cMark * | Get (int Index) |
const cMark * | First (void) const |
cMark * | First (void) |
const cMark * | Last (void) const |
cMark * | Last (void) |
const cMark * | Prev (const cMark *Object) const |
cMark * | Prev (const cMark *Object) |
const cMark * | Next (const cMark *Object) const |
cMark * | Next (const cMark *Object) |
![]() | |
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) |
bool | Contains (const cListObject *Object) const |
const cListObject * | Get (int Index) const |
cListObject * | Get (int Index) |
int | Count (void) const |
void | Sort (void) |
Static Public Member Functions | |
static cString | MarksFileName (const cRecording *Recording) |
static bool | DeleteMarksFile (const cRecording *Recording) |
Private Attributes | |
cString | recordingFileName |
cString | fileName |
double | framesPerSecond |
bool | isPesRecording |
time_t | nextUpdate |
time_t | lastFileTime |
time_t | lastChange |
Additional Inherited Members | |
![]() | |
cListBase (const char *NeedsLocking=NULL) | |
![]() | |
cListObject * | objects |
cListObject * | lastObject |
int | count |
cStateLock | stateLock |
const char * | needsLocking |
bool | useGarbageCollector |
Definition at line 397 of file recording.h.
|
inline |
Definition at line 407 of file recording.h.
References cConfig< cMark >::cConfig().
Referenced by Get(), GetNext(), GetNextBegin(), GetNextEnd(), and GetPrev().
void cMarks::Add | ( | int | Position | ) |
If this cMarks object is used by multiple threads, the caller must Lock() it before calling Add() and Unlock() it afterwards.
The same applies to calls to Del(), or any of the functions that return a "cMark *", in case an other thread might modify the list while the returned pointer is considered valid.
Definition at line 2384 of file recording.c.
References cListBase::Add(), framesPerSecond, and Sort().
void cMarks::Align | ( | void | ) |
Definition at line 2360 of file recording.c.
References cList< cMark >::First(), cIndexFile::GetClosestIFrame(), isPesRecording, cList< cMark >::Next(), and recordingFileName.
Referenced by Update().
|
static |
Definition at line 2297 of file recording.c.
References cRecording::FileName(), LOG_ERROR_STR, and MarksFileName().
Referenced by cMenuRecordingEdit::Delete(), and cRecording::DeleteMarks().
|
inline |
Definition at line 443 of file recording.h.
References cMarks().
const cMark * cMarks::Get | ( | int | Position | ) | const |
Definition at line 2390 of file recording.c.
References cList< cMark >::First(), and cList< cMark >::Next().
int cMarks::GetFrameAfterEdit | ( | int | Frame, |
int | LastFrame ) const |
Returns the number of the given Frame within the region covered by begin/end sequences.
LastFrame must be given by the caller. If there are no editing marks or in case of an error -1 is returned.
Definition at line 2468 of file recording.c.
References cListBase::Count(), cList< cMark >::First(), and cList< cMark >::Next().
Referenced by cRecording::NumFramesAfterEdit().
|
inline |
Definition at line 445 of file recording.h.
References cMarks().
const cMark * cMarks::GetNext | ( | int | Position | ) | const |
Definition at line 2408 of file recording.c.
References cList< cMark >::First(), and cList< cMark >::Next().
Definition at line 446 of file recording.h.
References cMarks().
Returns the next "begin" mark after EndMark, skipping any marks at the same position as EndMark.
If EndMark is NULL, the first actual "begin" will be returned (if any).
Definition at line 2417 of file recording.c.
References cList< cMark >::First(), cList< cMark >::Next(), and cMark::Position().
Referenced by cCutter::EditedFileName(), and GetNumSequences().
Definition at line 447 of file recording.h.
References cMarks().
Returns the next "end" mark after BeginMark, skipping any marks at the same position as BeginMark.
Definition at line 2433 of file recording.c.
References cList< cMark >::Next(), and cMark::Position().
Referenced by GetNumSequences().
int cMarks::GetNumSequences | ( | void | ) | const |
Returns the actual number of sequences to be cut from the recording.
If there is only one actual "begin" mark, and it is positioned at index 0 (the beginning of the recording), and there is no "end" mark, the return value is 0, which means that the result is the same as the original recording.
Definition at line 2451 of file recording.c.
References GetNextBegin(), and GetNextEnd().
Referenced by CutRecording().
|
inline |
Definition at line 444 of file recording.h.
References cMarks().
const cMark * cMarks::GetPrev | ( | int | Position | ) | const |
Definition at line 2399 of file recording.c.
References cList< cMark >::Last(), and cList< cMark >::Prev().
bool cMarks::Load | ( | const char * | RecordingFileName, |
double | FramesPerSecond = DEFAULTFRAMESPERSECOND, | ||
bool | IsPesRecording = false ) |
Definition at line 2308 of file recording.c.
References AddDirectory(), fileName, framesPerSecond, isPesRecording, lastChange, lastFileTime, MARKSFILESUFFIX, nextUpdate, recordingFileName, and Update().
Referenced by cSVDRPServer::CmdEDIT(), CutRecording(), cCutter::EditedFileName(), and cRecording::NumFramesAfterEdit().
|
static |
Returns the marks file name for the given Recording (regardless whether such a file actually exists).
Definition at line 2292 of file recording.c.
References AddDirectory(), cRecording::FileName(), cRecording::IsPesRecording(), and MARKSFILESUFFIX.
Referenced by DeleteMarksFile(), and cRecording::HasMarks().
bool cMarks::Save | ( | void | ) |
Definition at line 2351 of file recording.c.
References fileName, lastFileTime, LastModifiedTime(), and cConfig< T >::Save().
void cMarks::Sort | ( | void | ) |
Definition at line 2372 of file recording.c.
References cList< cMark >::First(), cList< cMark >::Next(), and swap().
bool cMarks::Update | ( | void | ) |
Definition at line 2320 of file recording.c.
References Align(), fileName, framesPerSecond, lastChange, lastFileTime, LastModifiedTime(), cConfig< T >::Load(), MarkFramesPerSecond, MutexMarkFramesPerSecond, nextUpdate, and Sort().
Referenced by Load().
|
private |
Definition at line 400 of file recording.h.
|
private |
Definition at line 401 of file recording.h.
|
private |
Definition at line 402 of file recording.h.
|
private |
Definition at line 405 of file recording.h.
|
private |
Definition at line 404 of file recording.h.
|
private |
Definition at line 403 of file recording.h.
|
private |
Definition at line 399 of file recording.h.