/*** Copyright (C) 2022 J Reece Wilson (a/k/a "Reece"). All rights reserved. File: PlatformChannel.hpp Date: 2022-2-1 Author: Reece ***/ #pragma once namespace Aurora::IO::Net { struct BaseSocket; struct PlatformChannel { PlatformChannel(BaseSocket *base) : base_(base) {} EUnderlyingModel SocketThreadModel(); void WritePerModel(const void *pIn, AuUInt length); void ReadPerModel(const void *pIn, AuUInt length); bool GetLocalEndpoint(ConnectionEndpoint &out); bool GetRemoteEndpoint(ConnectionEndpoint &out); private: BaseSocket *base_; }; }