|
vdr 2.6.1
|
#include <tools.h>
Public Member Functions | |
| cUnbufferedFile (void) | |
| ~cUnbufferedFile () | |
| int | Open (const char *FileName, int Flags, mode_t Mode=DEFFILEMODE) |
| int | Close (void) |
| void | SetReadAhead (size_t ra) |
| off_t | Seek (off_t Offset, int Whence) |
| ssize_t | Read (void *Data, size_t Size) |
| ssize_t | Write (const void *Data, size_t Size) |
Static Public Member Functions | |
| static cUnbufferedFile * | Create (const char *FileName, int Flags, mode_t Mode=DEFFILEMODE) |
Private Member Functions | |
| int | FadviseDrop (off_t Offset, off_t Len) |
Private Attributes | |
| int | fd |
| off_t | curpos |
| off_t | cachedstart |
| off_t | cachedend |
| off_t | begin |
| off_t | lastpos |
| off_t | ahead |
| size_t | readahead |
| size_t | written |
| size_t | totwritten |
cUnbufferedFile is used for large files that are mainly written or read in a streaming manner, and thus should not be cached.
| int cUnbufferedFile::Close | ( | void | ) |
Definition at line 1846 of file tools.c.
Referenced by cFileName::Close().
|
static |
Definition at line 1998 of file tools.c.
References Open().
Referenced by cFileName::Open(), and cVideoDirectory::OpenVideoFile().
|
private |
| int cUnbufferedFile::Open | ( | const char * | FileName, |
| int | Flags, | ||
| mode_t | Mode = DEFFILEMODE |
||
| ) |
| ssize_t cUnbufferedFile::Read | ( | void * | Data, |
| size_t | Size | ||
| ) |
Definition at line 1889 of file tools.c.
References max(), min(), READCHUNK, and safe_read().
Referenced by cNonBlockingFileReader::Action(), cRingBufferLinear::Read(), and ReadFrame().
| off_t cUnbufferedFile::Seek | ( | off_t | Offset, |
| int | Whence | ||
| ) |
Definition at line 1881 of file tools.c.
Referenced by cFileName::SetOffset().
| void cUnbufferedFile::SetReadAhead | ( | size_t | ra | ) |
Definition at line 1870 of file tools.c.
Referenced by cCuttingThread::LoadFrame().
| ssize_t cUnbufferedFile::Write | ( | const void * | Data, |
| size_t | Size | ||
| ) |
Definition at line 1947 of file tools.c.
References max(), MEGABYTE, min(), safe_write(), and WRITE_BUFFER.
Referenced by cRecorder::Action(), and cCuttingThread::ProcessSequence().