(define-module (irrlicht bindings core)
#:use-module (system foreign)
- #:use-module (irrlicht util))
+ #:use-module (irrlicht util foreign))
+
+;; dimension2d struct
+(define-public dimension2d
+ (list uint32 uint32))
+
+(define-public (dimension2d->pointer data)
+ (make-c-struct dimension2d data))
+
+;; rect struct
+(define-public rect
+ (list int32 int32 int32 int32))
+
+(define-public (rect->pointer data)
+ (make-c-struct rect data))
;; vector2df struct
(define-public vector2df
- (list float float float))
+ (list float float))
+
+(define-public (vector2df->pointer data)
+ (make-c-struct vector2df data))
;; vector3df struct
(define-public vector3df
(list float float float))
-;; aabbox3d f32 struct and functions
-(define-public aabbox3d_f32
- (append
- vector3df ; min-edge
- vector3df ; max-edge
- ))
+(define-public (vector3df->pointer data)
+ (make-c-struct vector3df data))
+
+;; aabbox3df struct
+(define-public aabbox3df
+ (list vector3df vector3df))
+
+(define-public (aabbox3df->pointer data)
+ (make-c-struct aabbox3df data))
(define-foreign aabbox3d-add-internal-point
void "irr_core_aabbox3d_addInternalPoint" (list '* '*))