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