]> git.jsancho.org Git - guile-irrlicht.git/blob - irrlicht.scm
079268ae12599f89eb91899a62e49c65931faea7
[guile-irrlicht.git] / irrlicht.scm
1 ;;; guile-irrlicht --- FFI bindings for Irrlicht Engine
2 ;;; Copyright (C) 2020 Javier Sancho <jsf@jsancho.org>
3 ;;;
4 ;;; This file is part of guile-irrlicht.
5 ;;;
6 ;;; Guile-irrlicht is free software; you can redistribute it and/or modify
7 ;;; it under the terms of the GNU Lesser General Public License as
8 ;;; published by the Free Software Foundation; either version 3 of the
9 ;;; License, or (at your option) any later version.
10 ;;;
11 ;;; Guile-irrlicht is distributed in the hope that it will be useful, but
12 ;;; WITHOUT ANY WARRANTY; without even the implied warranty of
13 ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14 ;;; General Public License for more details.
15 ;;;
16 ;;; You should have received a copy of the GNU Lesser General Public
17 ;;; License along with guile-irrlicht.  If not, see
18 ;;; <http://www.gnu.org/licenses/>.
19
20
21 (define-module (irrlicht)
22   #:use-module (oop goops)
23   #:use-module (irrlicht base)
24   #:use-module (irrlicht core)
25   #:use-module (irrlicht device)
26   #:use-module (irrlicht gui)
27   #:use-module (irrlicht io)
28   #:use-module (irrlicht irr)
29   #:use-module (irrlicht scene)
30   #:use-module (irrlicht video)
31   #:duplicates (merge-generics)
32   #:re-export (;; classes
33                <animated-mesh>
34                <animated-mesh-scene-node>
35                <attribute-exchanging-object>
36                <box3d>
37                <camera-scene-node>
38                <cursor-control>
39                <event>
40                <event-receiver>
41                <file-archive>
42                <file-system>
43                <gui-element>
44                <gui-environment>
45                <gui-static-text>
46                <irrlicht-device>
47                <key-map>
48                <material>
49                <mesh>
50                <mesh-scene-node>
51                <reference-counted>
52                <scene-manager>
53                <scene-node>
54                <scene-node-animator>
55                <texture>
56                <vertex3d>
57                <video-driver>
58                ;; methods
59                add-animated-mesh-scene-node!
60                add-animator!
61                add-camera-scene-node!
62                add-camera-scene-node-fps!
63                add-custom-scene-node!
64                add-file-archive!
65                add-internal-point!
66                add-octree-scene-node!
67                add-sphere-scene-node!
68                add-static-text!
69                begin-scene
70                create-device
71                create-rotation-animator
72                draw-vertex-primitive-list
73                drop!
74                end-scene
75                get-absolute-transformation
76                get-cursor-control
77                get-event-type
78                get-file-system
79                get-fps
80                get-gui-environment
81                get-mesh
82                get-name
83                get-position
84                get-root-scene-node
85                get-scene-manager
86                get-texture
87                get-video-driver
88                is-window-active?
89                make-box3d
90                make-event-receiver
91                make-material
92                make-vertex3d
93                reset-box3d!
94                run
95                set-material!
96                set-material-flag!
97                set-material-texture!
98                set-md2-animation!
99                set-position!
100                set-transform!
101                set-visible!
102                set-window-caption!
103                yield-device))
104
105 ;; Merged methods have to be exported apart
106 (re-export draw-all)