]> git.jsancho.org Git - guile-irrlicht.git/blob - irrlicht.i
license
[guile-irrlicht.git] / irrlicht.i
1 /*
2 guile-irrlicht --- GNU Guile bindings for Irrlicht Engine
3
4 Copyright (C) 2021 Javier Sancho <jsf@jsancho.org>
5
6 This file is part of guile-irrlicht.
7
8 guile-irrlicht is free software; you can redistribute it and/or modify
9 it under the terms of the GNU Lesser General Public License as
10 published by the Free Software Foundation; either version 3 of the
11 License, or (at your option) any later version.
12
13 guile-irrlicht is distributed in the hope that it will be useful, but
14 WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16 General Public License for more details.
17
18 You should have received a copy of the GNU Lesser General Public
19 License along with guile-irrlicht. If not, see
20 <http://www.gnu.org/licenses/>.
21 */
22
23 %module irrlicht
24 %{
25 #include <irrlicht/irrlicht.h>
26 using namespace irr;
27 using namespace core;
28 using namespace scene;
29 using namespace video;
30 using namespace io;
31 using namespace gui;
32 %}
33
34 typedef int s32;
35 typedef unsigned int u32;
36 typedef float f32;
37 typedef double f64;
38
39 %rename(add) operator+;
40 %rename(substract) operator-;
41 %rename(product) operator*;
42 %rename(divide) operator/;
43 %rename(equal) operator==;
44 %ignore operator+=;
45 %ignore operator-=;
46 %ignore operator*=;
47 %ignore operator/=;
48 %ignore operator!=;
49
50 %include dimension2d.h
51 %template(dimension2df) irr::core::dimension2d<irr::f32>;
52 %template(dimension2ds) irr::core::dimension2d<irr::s32>;
53 %template(dimension2du) irr::core::dimension2d<irr::u32>;
54
55 %rename("%(undercase)s", %$not %$isconstant, %$not %$isenumitem) "";
56 %feature("constasvar");
57
58 %include EDriverTypes.h
59 %include IrrCompileConfig.h
60 %include irrlicht.h
61
62 %scheme %{ (load-extension "libguile-irrlicht" "scm_init_irrlicht_module") %}