dlangui/3rdparty/android/looper.d

46 lines
1.1 KiB
D

/* dstep /path/to/ndk-r9d/platforms/android-9/arch-x86/usr/include/android/looper.h -o looper.d*/
module android.looper;
version (Android):
extern (C):
@system:
nothrow:
@nogc:
alias int function(int, int, void*) ALooper_callbackFunc;
enum
{
ALOOPER_PREPARE_ALLOW_NON_CALLBACKS = 1
}
enum
{
ALOOPER_POLL_WAKE = -1,
ALOOPER_POLL_CALLBACK = -2,
ALOOPER_POLL_TIMEOUT = -3,
ALOOPER_POLL_ERROR = -4
}
enum
{
ALOOPER_EVENT_INPUT = 1,
ALOOPER_EVENT_OUTPUT = 2,
ALOOPER_EVENT_ERROR = 4,
ALOOPER_EVENT_HANGUP = 8,
ALOOPER_EVENT_INVALID = 16
}
struct ALooper;
ALooper* ALooper_forThread();
ALooper* ALooper_prepare(int opts);
void ALooper_acquire(ALooper* looper);
void ALooper_release(ALooper* looper);
int ALooper_pollOnce(int timeoutMillis, int* outFd, int* outEvents, void** outData);
int ALooper_pollAll(int timeoutMillis, int* outFd, int* outEvents, void** outData);
void ALooper_wake(ALooper* looper);
int ALooper_addFd(ALooper* looper, int fd, int ident, int events, ALooper_callbackFunc callback, void* data);
int ALooper_removeFd(ALooper* looper, int fd);