MythTV
master
|
#include <filetransfer.h>
Public Member Functions | |
BEFileTransfer (QString &filename, MythSocket *remote, bool usereadahead, std::chrono::milliseconds timeout) | |
BEFileTransfer (QString &filename, MythSocket *remote, bool write) | |
MythSocket * | getSocket () |
bool | isOpen (void) |
bool | ReOpen (const QString &newFilename="") |
void | Stop (void) |
void | Pause (void) |
void | Unpause (void) |
int | RequestBlock (int size) |
int | WriteBlock (int size) |
long long | Seek (long long curpos, long long pos, int whence) |
uint64_t | GetFileSize (void) |
QString | GetFileName (void) |
void | SetTimeout (bool fast) |
![]() | |
ReferenceCounter (const QString &debugName, bool logDebug=true) | |
Creates reference counter with an initial value of 1. More... | |
virtual int | IncrRef (void) |
Increments reference count. More... | |
virtual int | DecrRef (void) |
Decrements reference count and deletes on 0. More... | |
Private Member Functions | |
~BEFileTransfer () override | |
Private Attributes | |
volatile bool | m_readthreadlive {true} |
bool | m_readsLocked {false} |
QWaitCondition | m_readsUnlockedCond |
ProgramInfo * | m_pginfo {nullptr} |
MythMediaBuffer * | m_rbuffer {nullptr} |
MythSocket * | m_sock {nullptr} |
bool | m_ateof {false} |
std::vector< char > | m_requestBuffer |
QMutex | m_lock |
bool | m_writemode {false} |
Friends | |
class | QObject |
Additional Inherited Members | |
![]() | |
static void | PrintDebug (void) |
Print out any leaks if that level of debugging is enabled. More... | |
![]() | |
virtual | ~ReferenceCounter (void) |
Called on destruction, will warn if object deleted with references in place. More... | |
![]() | |
bool | m_logDebug |
This is used to suppress creating LoggingItem classes for LoggingItem reference count changes. More... | |
QAtomicInt | m_referenceCount {1} |
Definition at line 20 of file programs/mythbackend/filetransfer.h.
BEFileTransfer::BEFileTransfer | ( | QString & | filename, |
MythSocket * | remote, | ||
bool | usereadahead, | ||
std::chrono::milliseconds | timeout | ||
) |
Definition at line 19 of file programs/mythbackend/filetransfer.cpp.
BEFileTransfer::BEFileTransfer | ( | QString & | filename, |
MythSocket * | remote, | ||
bool | write | ||
) |
Definition at line 31 of file programs/mythbackend/filetransfer.cpp.
|
overrideprivate |
Definition at line 45 of file programs/mythbackend/filetransfer.cpp.
|
inline |
Definition at line 29 of file programs/mythbackend/filetransfer.h.
bool BEFileTransfer::isOpen | ( | void | ) |
Definition at line 65 of file programs/mythbackend/filetransfer.cpp.
Referenced by MainServer::HandleAnnounce(), and MainServer::HandleFileTransferQuery().
bool BEFileTransfer::ReOpen | ( | const QString & | newFilename = "" | ) |
Definition at line 70 of file programs/mythbackend/filetransfer.cpp.
Referenced by MainServer::HandleFileTransferQuery().
void BEFileTransfer::Stop | ( | void | ) |
Definition at line 81 of file programs/mythbackend/filetransfer.cpp.
Referenced by MainServer::HandleFileTransferQuery(), and ~BEFileTransfer().
void BEFileTransfer::Pause | ( | void | ) |
Definition at line 101 of file programs/mythbackend/filetransfer.cpp.
Referenced by Seek().
void BEFileTransfer::Unpause | ( | void | ) |
Definition at line 113 of file programs/mythbackend/filetransfer.cpp.
Referenced by Seek().
int BEFileTransfer::RequestBlock | ( | int | size | ) |
Definition at line 128 of file programs/mythbackend/filetransfer.cpp.
Referenced by MainServer::HandleFileTransferQuery().
int BEFileTransfer::WriteBlock | ( | int | size | ) |
Definition at line 168 of file programs/mythbackend/filetransfer.cpp.
Referenced by MainServer::HandleFileTransferQuery().
long long BEFileTransfer::Seek | ( | long long | curpos, |
long long | pos, | ||
int | whence | ||
) |
Definition at line 229 of file programs/mythbackend/filetransfer.cpp.
Referenced by MainServer::HandleFileTransferQuery().
uint64_t BEFileTransfer::GetFileSize | ( | void | ) |
Definition at line 261 of file programs/mythbackend/filetransfer.cpp.
Referenced by MainServer::HandleAnnounce(), and MainServer::HandleFileTransferQuery().
QString BEFileTransfer::GetFileName | ( | void | ) |
Definition at line 269 of file programs/mythbackend/filetransfer.cpp.
Referenced by MainServer::HandleFileTransferQuery().
void BEFileTransfer::SetTimeout | ( | bool | fast | ) |
Definition at line 277 of file programs/mythbackend/filetransfer.cpp.
Referenced by MainServer::HandleFileTransferQuery().
|
friend |
Definition at line 22 of file programs/mythbackend/filetransfer.h.
Definition at line 51 of file programs/mythbackend/filetransfer.h.
Referenced by RequestBlock(), Seek(), and Stop().
Definition at line 52 of file programs/mythbackend/filetransfer.h.
Referenced by Pause(), RequestBlock(), Stop(), and Unpause().
|
private |
Definition at line 53 of file programs/mythbackend/filetransfer.h.
Referenced by RequestBlock(), and Unpause().
|
private |
Definition at line 55 of file programs/mythbackend/filetransfer.h.
Referenced by BEFileTransfer(), GetFileSize(), Pause(), RequestBlock(), Seek(), SetTimeout(), Stop(), Unpause(), WriteBlock(), and ~BEFileTransfer().
|
private |
Definition at line 56 of file programs/mythbackend/filetransfer.h.
Referenced by BEFileTransfer(), GetFileName(), GetFileSize(), isOpen(), Pause(), ReOpen(), RequestBlock(), Seek(), SetTimeout(), Stop(), Unpause(), WriteBlock(), and ~BEFileTransfer().
|
private |
Definition at line 57 of file programs/mythbackend/filetransfer.h.
Referenced by getSocket(), RequestBlock(), WriteBlock(), and ~BEFileTransfer().
Definition at line 58 of file programs/mythbackend/filetransfer.h.
Referenced by Seek().
|
private |
Definition at line 60 of file programs/mythbackend/filetransfer.h.
Referenced by RequestBlock(), and WriteBlock().
|
private |
Definition at line 62 of file programs/mythbackend/filetransfer.h.
Referenced by Pause(), RequestBlock(), Stop(), Unpause(), and WriteBlock().
Definition at line 64 of file programs/mythbackend/filetransfer.h.
Referenced by ReOpen(), Stop(), and WriteBlock().