60 lines
1.3 KiB
C++
60 lines
1.3 KiB
C++
/***
|
|
Copyright (C) 2022 J Reece Wilson (a/k/a "Reece"). All rights reserved.
|
|
|
|
File: ELoopSource.hpp
|
|
Date: 2022-2-9
|
|
Author: Reece
|
|
***/
|
|
#pragma once
|
|
|
|
namespace Aurora::IO::Loop
|
|
{
|
|
enum class ELoopSource
|
|
{
|
|
// standard thread primitives
|
|
eSourceSemaphore,
|
|
eSourceCV,
|
|
eSourceEvent,
|
|
eSourceMutex, // WARNING: You should not use kernel mutex objects over AuThreadPrimitives
|
|
eSourceSRW,
|
|
eSourceTimer,
|
|
|
|
// arbitrary file descriptior
|
|
eSourceHandle,
|
|
|
|
// async file transaction notification
|
|
eSourceAIO,
|
|
|
|
// file watcher queue has notification
|
|
eSourceFileWatcher,
|
|
|
|
// reserved for use by the network subsystem
|
|
eSourceSocketGroup,
|
|
|
|
// async work group trigger
|
|
eSourceAsync,
|
|
|
|
// IPC pipe
|
|
eSourceIPCHasClient,
|
|
eSourceIPCReadPipe,
|
|
|
|
// Process and console APIs
|
|
eProcessStdIn,
|
|
eProcessStdOut,
|
|
eProcessDead,
|
|
|
|
// window messge loops
|
|
eSourceApple,
|
|
eSourceX11,
|
|
eSourceWin32,
|
|
|
|
// glib oses
|
|
eSourceGlib,
|
|
|
|
// internal
|
|
eSourceInternalReserved1,
|
|
eSourceInternalReserved2,
|
|
eSourceInternalReserved3,
|
|
eSourceInternalReserved4,
|
|
};
|
|
} |