/*** Copyright (C) 2021 J Reece Wilson (a/k/a "Reece"). All rights reserved. File: ILoopSourceEx.hpp Date: 2021-10-3 Author: Reece ***/ #pragma once namespace Aurora::IO::Loop { struct ILoopSourceEx : virtual ILoopSource { virtual void OnPresleep() = 0; virtual bool OnTrigger(AuUInt handle) = 0; virtual void OnFinishSleep() = 0; virtual bool Singular() = 0; virtual AuUInt GetHandle() = 0; virtual const AuList &GetHandles() = 0; #if defined(AURORA_IS_POSIX_DERIVED) virtual const AuList &GetWriteHandles() = 0; virtual AuUInt GetWriteHandle() = 0; #endif }; }