summaryrefslogtreecommitdiff
path: root/src/loop.h
blob: 02f66753c86687421d1a122925aa3f6be7a8c3b1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#pragma once

#include <al/types.h>

#include "util/thread/thread.h"

#include "evwrap.h"

struct nn_event_loop {
    struct ev_loop *ev;
};

bool nn_event_loop_init(struct nn_event_loop *loop);
s32 nn_event_loop_run(struct nn_event_loop *loop);
s32 nn_event_loop_run_once(struct nn_event_loop *loop);
void nn_event_loop_sleep(struct nn_event_loop *loop, nn_os_tstamp delay);
void nn_event_loop_break_one(struct nn_event_loop *loop);
void nn_event_loop_break(struct nn_event_loop *loop);
bool nn_event_loop_is_broken(struct nn_event_loop *loop);
void nn_event_loop_destroy(struct nn_event_loop *loop);