FileTransfer Class Reference

#include <filetransfer.h>

Inheritance diagram for FileTransfer:
SocketHandler ReferenceCounter

List of all members.

Public Member Functions

 FileTransfer (QString &filename, MythSocket *remote, MythSocketManager *parent, bool usereadahead, int timeout_ms)
 FileTransfer (QString &filename, MythSocket *remote, MythSocketManager *parent, bool write)
bool isOpen (void)
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)
void SetTimeout (bool fast)
 FileTransfer (QString &filename, MythSocket *remote, bool usereadahead, int timeout_ms)
 FileTransfer (QString &filename, MythSocket *remote, bool write)
MythSocketgetSocket ()
bool isOpen (void)
bool ReOpen (QString newFilename="")
void Stop (void)
void UpRef (void)
bool DownRef (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)
void SetTimeout (bool fast)

Private Member Functions

 ~FileTransfer ()
 ~FileTransfer ()

Private Attributes

volatile bool readthreadlive
bool readsLocked
QWaitCondition readsUnlockedCond
ProgramInfopginfo
RingBufferrbuffer
bool ateof
vector< char > requestBuffer
QMutex lock
bool writemode
MythSocketsock
QMutex refLock
int refCount

Friends

class QObject

Detailed Description

Definition at line 21 of file libs/libmythprotoserver/sockethandler/filetransfer.h.


Constructor & Destructor Documentation

FileTransfer::FileTransfer ( QString &  filename,
MythSocket remote,
MythSocketManager parent,
bool  usereadahead,
int  timeout_ms 
)
FileTransfer::FileTransfer ( QString &  filename,
MythSocket remote,
MythSocketManager parent,
bool  write 
)
FileTransfer::~FileTransfer (  )  [private]
FileTransfer::FileTransfer ( QString &  filename,
MythSocket remote,
bool  usereadahead,
int  timeout_ms 
)

Definition at line 12 of file programs/mythbackend/filetransfer.cpp.

FileTransfer::FileTransfer ( QString &  filename,
MythSocket remote,
bool  write 
)

Definition at line 24 of file programs/mythbackend/filetransfer.cpp.

FileTransfer::~FileTransfer (  )  [private]

Member Function Documentation

bool FileTransfer::isOpen ( void   ) 
void FileTransfer::Stop ( void   ) 
void FileTransfer::Pause ( void   ) 

Definition at line 81 of file libs/libmythprotoserver/sockethandler/filetransfer.cpp.

Referenced by Seek().

void FileTransfer::Unpause ( void   ) 

Definition at line 91 of file libs/libmythprotoserver/sockethandler/filetransfer.cpp.

Referenced by Seek().

int FileTransfer::RequestBlock ( int  size  ) 
int FileTransfer::WriteBlock ( int  size  ) 
long long FileTransfer::Seek ( long long  curpos,
long long  pos,
int  whence 
)
uint64_t FileTransfer::GetFileSize ( void   ) 
void FileTransfer::SetTimeout ( bool  fast  ) 
MythSocket* FileTransfer::getSocket (  )  [inline]

Definition at line 29 of file programs/mythbackend/filetransfer.h.

bool FileTransfer::isOpen ( void   ) 
bool FileTransfer::ReOpen ( QString  newFilename = ""  ) 
void FileTransfer::Stop ( void   ) 
void FileTransfer::UpRef ( void   )  [virtual]
bool FileTransfer::DownRef ( void   )  [virtual]
void FileTransfer::Pause ( void   ) 
void FileTransfer::Unpause ( void   ) 
int FileTransfer::RequestBlock ( int  size  ) 
int FileTransfer::WriteBlock ( int  size  ) 
long long FileTransfer::Seek ( long long  curpos,
long long  pos,
int  whence 
)
uint64_t FileTransfer::GetFileSize ( void   ) 
void FileTransfer::SetTimeout ( bool  fast  ) 

Friends And Related Function Documentation

QObject [friend]

Member Data Documentation

volatile bool FileTransfer::readthreadlive [private]

Definition at line 52 of file libs/libmythprotoserver/sockethandler/filetransfer.h.

Referenced by RequestBlock(), Seek(), and Stop().

QWaitCondition FileTransfer::readsUnlockedCond [private]

Definition at line 54 of file libs/libmythprotoserver/sockethandler/filetransfer.h.

Referenced by RequestBlock(), and Unpause().

Definition at line 58 of file libs/libmythprotoserver/sockethandler/filetransfer.h.

Referenced by Seek().

vector< char > FileTransfer::requestBuffer [private]
QMutex FileTransfer::lock [private]

Definition at line 64 of file libs/libmythprotoserver/sockethandler/filetransfer.h.

Referenced by ReOpen(), Stop(), and WriteBlock().

Definition at line 59 of file programs/mythbackend/filetransfer.h.

Referenced by getSocket().

QMutex FileTransfer::refLock [private]

Definition at line 65 of file programs/mythbackend/filetransfer.h.

Referenced by DownRef(), and UpRef().

int FileTransfer::refCount [private]

Definition at line 66 of file programs/mythbackend/filetransfer.h.

Referenced by DownRef(), and UpRef().


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends
Generated on Mon May 28 06:42:03 2012 for MythTV by  doxygen 1.6.3