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