18 #ifndef NETFILETRANSFER_H 19 #define NETFILETRANSFER_H 77 : m_Session(session), m_NextRequestID(1), m_LastProgressReportTime(0)
92 void StartTask(
const shared_ptr<CNetFileReceiveTask>& task);
99 void StartResponse(
u32 requestID,
const std::string& data);
133 #endif // NETFILETRANSFER_H virtual ~CNetFileReceiveTask()
Definition: NetFileTransfer.h:50
size_t packetsInFlight
Definition: NetFileTransfer.h:117
FileSendTasksMap m_FileSendTasks
Definition: NetFileTransfer.h:128
u32 m_NextRequestID
Definition: NetFileTransfer.h:122
static const size_t DEFAULT_FILE_TRANSFER_WINDOW_SIZE
Definition: NetFileTransfer.h:36
static const size_t MAX_FILE_TRANSFER_SIZE
Definition: NetFileTransfer.h:39
Interface for sessions to which messages can be sent.
Definition: NetSession.h:54
CNetFileTransferer(INetSession *session)
Definition: NetFileTransfer.h:76
static const size_t DEFAULT_FILE_TRANSFER_PACKET_SIZE
Definition: NetFileTransfer.h:30
size_t maxWindowSize
Definition: NetFileTransfer.h:116
double m_LastProgressReportTime
Definition: NetFileTransfer.h:130
uint32_t u32
Definition: types.h:39
std::map< u32, shared_ptr< CNetFileReceiveTask > > FileReceiveTasksMap
Definition: NetFileTransfer.h:124
virtual void OnComplete()=0
Called when m_Buffer contains the full received data.
Asynchronous file-receiving task.
Definition: NetFileTransfer.h:46
std::string m_Buffer
Definition: NetFileTransfer.h:67
static const size_t MiB
Definition: alignment.h:94
FileReceiveTasksMap m_FileReceiveTasks
Definition: NetFileTransfer.h:125
i64 Status
Error handling system.
Definition: status.h:171
u32 m_RequestID
Uniquely identifies the request within the scope of its CNetFileTransferer.
Definition: NetFileTransfer.h:63
The base class for all network messages exchanged within the game.
Definition: NetMessage.h:32
std::string buffer
Definition: NetFileTransfer.h:114
INetSession * m_Session
Definition: NetFileTransfer.h:120
Handles transferring files between clients and servers.
Definition: NetFileTransfer.h:73
size_t m_Length
Definition: NetFileTransfer.h:65
std::map< u32, CNetFileSendTask > FileSendTasksMap
Definition: NetFileTransfer.h:127
CNetFileReceiveTask()
Definition: NetFileTransfer.h:49
u32 requestID
Definition: NetFileTransfer.h:113
The client end of a network session.
Definition: NetSession.h:65
The server's end of a network session.
Definition: NetSession.h:127
size_t offset
Definition: NetFileTransfer.h:115
Asynchronous file-sending task.
Definition: NetFileTransfer.h:111