type-specific wrapping and unwrapping of scheme values
[clinton/guile-figl.git] / figl / glu / types.scm
1 ;;; figl
2 ;;; Copyright (C) 2013 Daniel Hartwig <mandyke@gmail.com>
3 ;;;
4 ;;; Figl is free software: you can redistribute it and/or modify it
5 ;;; under the terms of the GNU Lesser General Public License as
6 ;;; published by the Free Software Foundation, either version 3 of the
7 ;;; License, or (at your option) any later version.
8 ;;;
9 ;;; Figl is distributed in the hope that it will be useful, but WITHOUT
10 ;;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
11 ;;; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General
12 ;;; Public License for more details.
13 ;;;
14 ;;; You should have received a copy of the GNU Lesser General Public
15 ;;; License along with this program. If not, see
16 ;;; <http://www.gnu.org/licenses/>.
17
18 ;;; Commentary:
19 ;;
20 ;; Mappings from OpenGL to FFI types.
21 ;;
22 ;;; Code:
23
24 (define-module (figl glu types)
25 #:use-module (figl runtime)
26 #:export (GLUnurbs*
27 GLUquadric*
28 GLUtesselator*
29 GLdouble*
30 GLfloat*
31 GLvoid*
32 _GLUfuncptr
33 const-void-*))
34
35 (module-use! (module-public-interface (current-module))
36 (resolve-interface '(figl gl types)))
37
38 (define-simple-foreign-type GLUnurbs* '*)
39 (define-simple-foreign-type GLUquadric* '*)
40 (define-simple-foreign-type GLUtesselator* '*)
41 (define-simple-foreign-type GLdouble* '*)
42 (define-simple-foreign-type GLfloat* '*)
43 (define-simple-foreign-type GLvoid* '*)
44 (define-simple-foreign-type _GLUfuncptr '*)
45 (define-simple-foreign-type const-void-* '*)