/*** Copyright (C) 2023 J Reece Wilson (a/k/a "Reece"). All rights reserved. File: LSIOHandle.hpp Date: 2023-9-16 Author: Reece ***/ #pragma once #include "WaitSingle.hpp" namespace Aurora::IO::Loop { struct LSIOHandle : virtual WaitSingleGeneric { LSIOHandle(); LSIOHandle(const AuSPtr &pHandle); virtual bool OnTrigger(AuUInt handle) override; virtual const AuList &GetHandles() override; virtual AuUInt GetHandle() override; virtual bool Singular() override; #if defined(AURORA_IS_POSIX_DERIVED) virtual const AuList &GetWriteHandles() override; virtual AuUInt GetWriteHandle() override; #endif virtual ELoopSource GetType() override; //protected: AuSPtr pHandle; }; }