AuroraRuntime/Source/IO/Net/AuNetWriteQueue.hpp

25 lines
554 B
C++

/***
Copyright (C) 2022 J Reece Wilson (a/k/a "Reece"). All rights reserved.
File: AuNetWriteQueue.hpp
Date: 2022-8-21
Author: Reece
***/
#pragma once
namespace Aurora::IO::Net
{
struct SocketBase;
struct NetWriteQueue
{
bool Push(const AuMemoryViewRead &read);
void NotifyBytesWritten(AuUInt written);
AuMemoryViewRead Dequeue();
bool IsEmpty();
SocketBase *pBase {};
private:
AuList<AuTuple<AuUInt, AuMemoryViewRead>> views_;
AuMemoryViewRead current_;
};
}