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