Shaka Packager SDK
|
Declaration of class which implements a thread-safe circular buffer. More...
#include <threaded_io_file.h>
Public Types | |
enum | Mode { kInputMode, kOutputMode } |
Public Member Functions | |
ThreadedIoFile (std::unique_ptr< File, FileCloser > internal_file, Mode mode, uint64_t io_cache_size, uint64_t io_block_size) | |
File implementation overrides. | |
bool | Close () override |
int64_t | Read (void *buffer, uint64_t length) override |
int64_t | Write (const void *buffer, uint64_t length) override |
int64_t | Size () override |
bool | Flush () override |
bool | Seek (uint64_t position) override |
bool | Tell (uint64_t *position) override |
Public Member Functions inherited from shaka::File | |
const std::string & | file_name () const |
Protected Member Functions | |
bool | Open () override |
Internal open. Should not be used directly. | |
Protected Member Functions inherited from shaka::File | |
File (const std::string &file_name) | |
virtual | ~File () |
Additional Inherited Members | |
Static Public Member Functions inherited from shaka::File | |
static File * | Open (const char *file_name, const char *mode) |
static File * | OpenWithNoBuffering (const char *file_name, const char *mode) |
static bool | Delete (const char *file_name) |
static int64_t | GetFileSize (const char *file_name) |
static bool | ReadFileToString (const char *file_name, std::string *contents) |
static bool | WriteStringToFile (const char *file_name, const std::string &contents) |
static bool | WriteFileAtomically (const char *file_name, const std::string &contents) |
static bool | Copy (const char *from_file_name, const char *to_file_name) |
static int64_t | CopyFile (File *source, File *destination) |
static int64_t | CopyFile (File *source, File *destination, int64_t max_copy) |
static std::string | MakeCallbackFileName (const BufferCallbackParams &callback_params, const std::string &name) |
static bool | ParseCallbackFileName (const std::string &callback_file_name, const BufferCallbackParams **callback_params, std::string *name) |
Declaration of class which implements a thread-safe circular buffer.
Definition at line 20 of file threaded_io_file.h.
|
overridevirtual |
Flush() and de-allocate resources associated with this file, and delete this File object. THIS IS THE ONE TRUE WAY TO DEALLOCATE THIS OBJECT.
Implements shaka::File.
Definition at line 55 of file threaded_io_file.cc.
|
overridevirtual |
Flush the file so that recently written data will survive an application crash (but not necessarily an OS crash). For instance, in LocalFile the data is flushed into the OS but not necessarily to disk.
Implements shaka::File.
Definition at line 107 of file threaded_io_file.cc.
|
overridevirtual |
Read data and return it in buffer.
[out] | buffer | points to a block of memory with a size of at least length bytes. |
length | indicates number of bytes to be read. |
Implements shaka::File.
Definition at line 70 of file threaded_io_file.cc.
|
overridevirtual |
Seek to the specifield position in the file.
position | is the position to seek to. |
Implements shaka::File.
Definition at line 120 of file threaded_io_file.cc.
|
overridevirtual |
Implements shaka::File.
Definition at line 101 of file threaded_io_file.cc.
|
overridevirtual |
Get the current file position.
position | is a pointer to contain the current file position upon successful return. |
Implements shaka::File.
Definition at line 152 of file threaded_io_file.cc.
|
overridevirtual |
Write block of data.
buffer | points to a block of memory with at least length bytes. |
length | indicates number of bytes to write. |
Implements shaka::File.
Definition at line 86 of file threaded_io_file.cc.