X-Git-Url: https://git.jsancho.org/?p=guile-assimp.git;a=blobdiff_plain;f=src%2Flow-level%2Fcimport.scm;fp=src%2Flow-level%2Fcimport.scm;h=9bc0c99afcb038b355869bf02617fc004d049797;hp=0000000000000000000000000000000000000000;hb=3232da94d35e82b13b04e703fe68c5f1f3232838;hpb=917fd378fcc23c07d14442e0ccabcce90f8c9fcc diff --git a/src/low-level/cimport.scm b/src/low-level/cimport.scm new file mode 100644 index 0000000..9bc0c99 --- /dev/null +++ b/src/low-level/cimport.scm @@ -0,0 +1,32 @@ +;;; guile-assimp, foreign interface to libassimp +;;; Copyright (C) 2014 by Javier Sancho Fernandez +;;; +;;; This program is free software: you can redistribute it and/or modify +;;; it under the terms of the GNU General Public License as published by +;;; the Free Software Foundation, either version 3 of the License, or +;;; (at your option) any later version. +;;; +;;; This program is distributed in the hope that it will be useful, +;;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with this program. If not, see . + + +(define-module (assimp low-level cimport) + #:use-module (assimp low-level) + #:use-module (system foreign) + #:export (aiImportFile + aiMultiplyMatrix4)) + +(define libassimp (dynamic-link "libassimp")) + +(define-syntax define-assimp-function + (syntax-rules (->) + ((_ (name arg-type ...) -> return-type) + (define-foreign-function ((libassimp name) arg-type ...) -> return-type)))) + +(define-assimp-function (aiImportFile '* unsigned-int) -> '*) +(define-assimp-function (aiMultiplyMatrix4 '* '*) -> void)