26 lines
666 B
C++
26 lines
666 B
C++
#pragma once
|
|
|
|
class UpStream;
|
|
class LongSession;
|
|
class DownStream
|
|
{
|
|
public:
|
|
|
|
void Init(int socket_handle, std::weak_ptr<UpStream> up);
|
|
|
|
int GetSocketHandle() const { return socket_handle_; }
|
|
std::weak_ptr<UpStream> GetUpStream() const { return up_; }
|
|
void ReBindUpStream(std::weak_ptr<UpStream> up);
|
|
bool IsLongSession() { return is_long_session_; }
|
|
void ProcCMMsg(f8::MsgHdr& hdr, int tag);
|
|
|
|
void ForwardUpStreamMsg(f8::MsgHdr& hdr);
|
|
void OnClose();
|
|
|
|
private:
|
|
int socket_handle_ = a8::INVALID_SOCKET_HANDLE;
|
|
std::weak_ptr<UpStream> up_;
|
|
bool is_long_session_ = false;
|
|
std::weak_ptr<LongSession> long_session_wp_;
|
|
};
|