AuroraRuntime/Source/IO/Net/AuNetSocketServerAcceptReadOperation.hpp

45 lines
1.0 KiB
C++

/***
Copyright (C) 2022 J Reece Wilson (a/k/a "Reece"). All rights reserved.
File: AuNetSocketServerAcceptReadOperation.hpp
Date: 2022-8-22
Author: Reece
***/
#pragma once
namespace Aurora::IO::Net
{
struct SocketServer;
struct SocketServerAcceptReadOperationBase :
#if defined(AURORA_IS_MODERNNT_DERIVED)
virtual SocketOverlappedOperation
#else
virtual IIOSimpleEventListener
#endif
{
SocketServerAcceptReadOperationBase(SocketServer *pParent);
#if defined(AURORA_IS_MODERNNT_DERIVED)
virtual void OnOverlappedComplete() override;
virtual void OnOverlappedFailure(const NetError &error) override;
#else
virtual void OnIOTick() override;
virtual void OnIOComplete() override;
virtual void OnIOFailure() override;
#endif
protected:
SocketServer *pParent_;
};
}
#if defined(AURORA_IS_MODERNNT_DERIVED)
#include "AuNetSocketServerAcceptReadOperation.NT.hpp"
#else
#include "AuNetSocketServerAcceptReadOperation.Unix.hpp"
#endif