summaryrefslogtreecommitdiff
path: root/src/event.lisp
blob: fb6e98aa3b12c9e1c9db67ec42ffa3eec4766ef9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
(in-package #:ocl)

(defun wait-for-events (event-list)
  (with-foreign-sequence (c-event-list event-list 'cl-event num-events)
    (check-error (%wait-for-events num-events c-event-list))))

(defun create-user-event (context)
  (check-error-arg (%create-user-event context)))

(defparameter +event-info-type-alist+
  '((:event-command-queue            . cl-command-queue)
    (:event-context                  . cl-context)
    (:event-command-type             . cl-command-type)
    (:event-command-execution-status . cl-int)
    (:event-reference-count          . cl-uint)))

(wrap-get-info-function get-event-info %get-event-info +event-info-type-alist+)

(defun retain-event (event)
  (check-error (%retain-event event)))

(defun release-event (event)
  (check-error (%release-event event)))

(defun set-user-event-status (event execution-status)
  (check-error (%set-user-event-status event execution-status)))