]> git.jsancho.org Git - guile-irrlicht.git/blob - irrlicht.scm
5dd508ed33c2f40f1c51dd763e71c14fe21c91a1
[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-button>
44                <gui-editbox>
45                <gui-element>
46                <gui-environment>
47                <gui-font>
48                <gui-image>
49                <gui-listbox>
50                <gui-scrollbar>
51                <gui-skin>
52                <gui-static-text>
53                <gui-window>
54                <irrlicht-device>
55                <key-map>
56                <material>
57                <mesh>
58                <mesh-scene-node>
59                <reference-counted>
60                <scene-manager>
61                <scene-node>
62                <scene-node-animator>
63                <texture>
64                <timer>
65                <vertex3d>
66                <video-driver>
67                ;; methods
68                add-animated-mesh-scene-node!
69                add-animator!
70                add-button!
71                add-camera-scene-node!
72                add-camera-scene-node-fps!
73                add-cube-scene-node!
74                add-custom-scene-node!
75                add-editbox!
76                add-file-archive!
77                add-image!
78                add-internal-point!
79                add-item!
80                add-listbox!
81                add-octree-scene-node!
82                add-scrollbar!
83                add-sphere-scene-node!
84                add-static-text!
85                add-window!
86                begin-scene
87                close-device
88                create-device
89                create-fly-circle-animator
90                create-fly-straight-animator
91                create-rotation-animator
92                draw-vertex-primitive-list
93                drop!
94                end-scene
95                get-absolute-transformation
96                get-built-in-font
97                get-color
98                get-cursor-control
99                get-event-gui-caller
100                get-event-gui-type
101                get-event-key
102                get-event-key-pressed
103                get-event-type
104                get-file-system
105                get-font
106                get-fps
107                get-gui-environment
108                get-id
109                get-mesh
110                get-name
111                get-root-scene-node
112                get-scene-manager
113                get-skin
114                get-texture
115                get-time
116                get-timer
117                get-video-driver
118                is-window-active?
119                make-box3d
120                make-event-receiver
121                make-material
122                make-vertex3d
123                reset-box3d!
124                run
125                set-animation-speed!
126                set-color!
127                set-event-receiver!
128                set-font!
129                set-frame-loop!
130                set-material!
131                set-material-flag!
132                set-material-texture!
133                set-max!
134                set-md2-animation!
135                set-override-color!
136                set-resizable!
137                set-rotation!
138                set-scale!
139                set-transform!
140                set-visible!
141                set-window-caption!
142                yield-device))
143
144 ;; Merged methods have to be exported apart
145 (re-export draw-all
146            get-position
147            set-position!)