]> git.jsancho.org Git - guile-irrlicht.git/blob - irrlicht.scm
24a3a132880a0fd88e6837932000198084f575f7
[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                close-device
85                create-device
86                create-fly-circle-animator
87                create-fly-straight-animator
88                create-rotation-animator
89                draw-vertex-primitive-list
90                drop!
91                end-scene
92                get-absolute-transformation
93                get-built-in-font
94                get-color
95                get-cursor-control
96                get-event-gui-caller
97                get-event-gui-type
98                get-event-key
99                get-event-key-pressed
100                get-event-type
101                get-file-system
102                get-font
103                get-fps
104                get-gui-environment
105                get-id
106                get-mesh
107                get-name
108                get-root-scene-node
109                get-scene-manager
110                get-skin
111                get-texture
112                get-time
113                get-timer
114                get-video-driver
115                is-window-active?
116                make-box3d
117                make-event-receiver
118                make-material
119                make-vertex3d
120                reset-box3d!
121                run
122                set-animation-speed!
123                set-color!
124                set-event-receiver!
125                set-font!
126                set-frame-loop!
127                set-material!
128                set-material-flag!
129                set-material-texture!
130                set-max!
131                set-md2-animation!
132                set-override-color!
133                set-resizable!
134                set-rotation!
135                set-scale!
136                set-transform!
137                set-visible!
138                set-window-caption!
139                yield-device))
140
141 ;; Merged methods have to be exported apart
142 (re-export draw-all
143            get-position
144            set-position!)