From 8a54795e9344683c056c50883622d8d08254800b Mon Sep 17 00:00:00 2001 From: William Robinson Date: Sun, 28 Oct 2007 21:41:01 +0000 Subject: [PATCH] Split out the GLU into seperate files to keep windows happy. --- cl-glfw-glu-version_1_1.asd | 12 ++++++++++++ cl-glfw-glu-version_1_2.asd | 12 ++++++++++++ cl-glfw-glu-version_1_3.asd | 12 ++++++++++++ lib/glu-version_1_1.lisp | 3 +++ lib/glu-version_1_2.lisp | 18 ++++++++++++++++++ lib/glu-version_1_3.lisp | 13 +++++++++++++ lib/glu.lisp | 42 +++++++++--------------------------------- 7 files changed, 79 insertions(+), 33 deletions(-) create mode 100644 cl-glfw-glu-version_1_1.asd create mode 100644 cl-glfw-glu-version_1_2.asd create mode 100644 cl-glfw-glu-version_1_3.asd create mode 100644 lib/glu-version_1_1.lisp create mode 100644 lib/glu-version_1_2.lisp create mode 100644 lib/glu-version_1_3.lisp diff --git a/cl-glfw-glu-version_1_1.asd b/cl-glfw-glu-version_1_1.asd new file mode 100644 index 0000000..9896766 --- /dev/null +++ b/cl-glfw-glu-version_1_1.asd @@ -0,0 +1,12 @@ +(defpackage #:cl-glfw-glu-version_1_1-system + (:use #:asdf #:cl)) + +(in-package #:cl-glfw-glu-version_1_1-system) + +(defsystem "cl-glfw-glu-version_1_1" + :description "Common Lisp bindings for GLFW - GLU 1.1 Extension Package" + :version "0.1" + :author "William Robinson " + :licence "Public Domain" + :depends-on ("cl-glfw") + :components ((:module "lib" :components ((:file "glu-version_1_1"))))) \ No newline at end of file diff --git a/cl-glfw-glu-version_1_2.asd b/cl-glfw-glu-version_1_2.asd new file mode 100644 index 0000000..bfdf2a8 --- /dev/null +++ b/cl-glfw-glu-version_1_2.asd @@ -0,0 +1,12 @@ +(defpackage #:cl-glfw-glu-version_1_2-system + (:use #:asdf #:cl)) + +(in-package #:cl-glfw-glu-version_1_2-system) + +(defsystem "cl-glfw-glu-version_1_2" + :description "Common Lisp bindings for GLFW - GLU 1.2 Extension Package" + :version "0.1" + :author "William Robinson " + :licence "Public Domain" + :depends-on ("cl-glfw") + :components ((:module "lib" :components ((:file "glu-version_1_2"))))) \ No newline at end of file diff --git a/cl-glfw-glu-version_1_3.asd b/cl-glfw-glu-version_1_3.asd new file mode 100644 index 0000000..a725715 --- /dev/null +++ b/cl-glfw-glu-version_1_3.asd @@ -0,0 +1,12 @@ +(defpackage #:cl-glfw-glu-version_1_3-system + (:use #:asdf #:cl)) + +(in-package #:cl-glfw-glu-version_1_3-system) + +(defsystem "cl-glfw-glu-version_1_3" + :description "Common Lisp bindings for GLFW - GLU 1.3 Extension Package" + :version "0.1" + :author "William Robinson " + :licence "Public Domain" + :depends-on ("cl-glfw") + :components ((:module "lib" :components ((:file "glu-version_1_3"))))) \ No newline at end of file diff --git a/lib/glu-version_1_1.lisp b/lib/glu-version_1_1.lisp new file mode 100644 index 0000000..1da0e03 --- /dev/null +++ b/lib/glu-version_1_1.lisp @@ -0,0 +1,3 @@ +(in-package #:glu) + +(defcfun ("gluGetString" get-string) :pointer (name gl:enum)) \ No newline at end of file diff --git a/lib/glu-version_1_2.lisp b/lib/glu-version_1_2.lisp new file mode 100644 index 0000000..8e2572f --- /dev/null +++ b/lib/glu-version_1_2.lisp @@ -0,0 +1,18 @@ +(in-package #:glu) + +(defcfun ("gluNextContour" next-contour) :void (tess :pointer) (type gl:enum)) +(defcfun ("gluEndPolygon" end-polygon) :void (tess :pointer)) +(defcfun ("gluDeleteTess" delete-tess) :void (tess :pointer)) +(defcfun ("gluNewTess" new-tess) :pointer ) +(defcfun ("gluTessBeginContour" tess-begin-contour) :void (tess :pointer)) +(defcfun ("gluTessBeginPolygon" tess-begin-polygon) :void (tess :pointer) (data :pointer)) +(defcfun ("gluTessCallback" tess-callback) :void (tess :pointer) (which gl:enum) (CallBackFunc :pointer)) +(defcfun ("gluTessEndContour" tess-end-contour) :void (tess :pointer)) +(defcfun ("gluTessEndPolygon" tess-end-polygon) :void (tess :pointer)) +(defcfun ("gluTessNormal" tess-normal) :void (tess :pointer) (valueX gl:double) (valueY gl:double) (valueZ gl:double)) +(defcfun ("gluTessProperty" tess-property) :void (tess :pointer) (which gl:enum) (data gl:double)) +(defcfun ("gluTessVertex" tess-vertex) :void (tess :pointer) (location :pointer) (data :pointer)) + +(defcfun ("gluGetTessProperty" get-tess-property) :void (tess :pointer) (which gl:enum) (data :pointer)) +(defcfun ("gluBeginPolygon" begin-polygon) :void (tess :pointer)) + diff --git a/lib/glu-version_1_3.lisp b/lib/glu-version_1_3.lisp new file mode 100644 index 0000000..b967ec8 --- /dev/null +++ b/lib/glu-version_1_3.lisp @@ -0,0 +1,13 @@ +(in-package #:glu) + +(defcfun ("gluScaleImage" scale-image) gl:int (format gl:enum) (wIn gl:sizei) (hIn gl:sizei) (typeIn gl:enum) (dataIn :pointer) (wOut gl:sizei) (hOut gl:sizei) (typeOut gl:enum) (dataOut :pointer)) +(defcfun ("gluCheckExtension" check-extension) gl:boolean (extName :pointer) (extString :pointer)) +(defcfun ("gluBuild1DMipmapLevels" build-1d-mipmap-levels) gl:int (target gl:enum) (internalFormat gl:int) (width gl:sizei) (format gl:enum) (type gl:enum) (level gl:int) (base gl:int) (max gl:int) (data :pointer)) +(defcfun ("gluBuild2DMipmapLevels" build-2d-mipmap-levels) gl:int (target gl:enum) (internalFormat gl:int) (width gl:sizei) (height gl:sizei) (format gl:enum) (type gl:enum) (level gl:int) (base gl:int) (max gl:int) (data :pointer)) +(defcfun ("gluBuild3DMipmapLevels" build-3d-mipmap-levels) gl:int (target gl:enum) (internalFormat gl:int) (width gl:sizei) (height gl:sizei) (depth gl:sizei) (format gl:enum) (type gl:enum) (level gl:int) (base gl:int) (max gl:int) (data :pointer)) +(defcfun ("gluBuild3DMipmaps" build-3d-mipmaps) gl:int (target gl:enum) (internalFormat gl:int) (width gl:sizei) (height gl:sizei) (depth gl:sizei) (format gl:enum) (type gl:enum) (data :pointer)) + +(defcfun ("gluNurbsCallback" nurbs-callback) :void (nurb :pointer) (which gl:enum) (CallBackFunc :pointer)) +(defcfun ("gluNurbsCallbackData" nurbs-callback-data) :void (nurb :pointer) (userData :pointer)) +(defcfun ("gluNurbsCallbackDataEXT" nurbs-callback-dataext) :void (nurb :pointer) (userData :pointer)) +(defcfun ("gluUnProject4" un-project-4) gl:int (winX gl:double) (winY gl:double) (winZ gl:double) (clipW gl:double) (model :pointer) (proj :pointer) (view :pointer) (nearVal gl:double) (farVal gl:double) (objX :pointer) (objY :pointer) (objZ :pointer) (objW :pointer)) diff --git a/lib/glu.lisp b/lib/glu.lisp index fbacafe..1be1dfe 100644 --- a/lib/glu.lisp +++ b/lib/glu.lisp @@ -3,15 +3,16 @@ (:nicknames #:glu) (:export +ext-object-space-tess+ +ext-nurbs-tessellator+ +false+ +true+ +version-1-1+ +version-1-2+ +version-1-3+ +version+ +extensions+ +invalid-enum+ +invalid-value+ +out-of-memory+ +incompatible-gl-version+ +invalid-operation+ +outline-polygon+ +outline-patch+ +nurbs-error+ +error+ +nurbs-begin+ +nurbs-begin-ext+ +nurbs-vertex+ +nurbs-vertex-ext+ +nurbs-normal+ +nurbs-normal-ext+ +nurbs-color+ +nurbs-color-ext+ +nurbs-texture-coord+ +nurbs-tex-coord-ext+ +nurbs-end+ +nurbs-end-ext+ +nurbs-begin-data+ +nurbs-begin-data-ext+ +nurbs-vertex-data+ +nurbs-vertex-data-ext+ +nurbs-normal-data+ +nurbs-normal-data-ext+ +nurbs-color-data+ +nurbs-color-data-ext+ +nurbs-texture-coord-data+ +nurbs-tex-coord-data-ext+ +nurbs-end-data+ +nurbs-end-data-ext+ +nurbs-error-1+ +nurbs-error-2+ +nurbs-error-3+ +nurbs-error-4+ +nurbs-error-5+ +nurbs-error-6+ +nurbs-error-7+ +nurbs-error-8+ +nurbs-error-9+ +nurbs-error-10+ +nurbs-error-11+ +nurbs-error-12+ +nurbs-error-13+ +nurbs-error-14+ +nurbs-error-15+ +nurbs-error-16+ +nurbs-error-17+ +nurbs-error-18+ +nurbs-error-19+ +nurbs-error-20+ +nurbs-error-21+ +nurbs-error-22+ +nurbs-error-23+ +nurbs-error-24+ +nurbs-error-25+ +nurbs-error-26+ +nurbs-error-27+ +nurbs-error-28+ +nurbs-error-29+ +nurbs-error-30+ +nurbs-error-31+ +nurbs-error-32+ +nurbs-error-33+ +nurbs-error-34+ +nurbs-error-35+ +nurbs-error-36+ +nurbs-error-37+ +auto-load-matrix+ +culling+ +sampling-tolerance+ +display-mode+ +parametric-tolerance+ +sampling-method+ +u-step+ +v-step+ +nurbs-mode+ +nurbs-mode-ext+ +nurbs-tessellator+ +nurbs-tessellator-ext+ +nurbs-renderer+ +nurbs-renderer-ext+ +object-parametric-error+ +object-parametric-error-ext+ +object-path-length+ +object-path-length-ext+ +path-length+ +parametric-error+ +domain-distance+ +map-1-trim-2+ +map-1-trim-3+ +point+ +line+ +fill+ +silhouette+ +smooth+ +flat+ +none+ +outside+ +inside+ +tess-begin+ +begin+ +tess-vertex+ +vertex+ +tess-end+ +end+ +tess-error+ +tess-edge-flag+ +edge-flag+ +tess-combine+ +tess-begin-data+ +tess-vertex-data+ +tess-end-data+ +tess-error-data+ +tess-edge-flag-data+ +tess-combine-data+ +cw+ +ccw+ +interior+ +exterior+ +unknown+ +tess-winding-rule+ +tess-boundary-only+ +tess-tolerance+ +tess-error-1+ +tess-error-2+ +tess-error-3+ +tess-error-4+ +tess-error-5+ +tess-error-6+ +tess-error-7+ +tess-error-8+ +tess-missing-begin-polygon+ +tess-missing-begin-contour+ +tess-missing-end-polygon+ +tess-missing-end-contour+ +tess-coord-too-large+ +tess-need-combine-callback+ +tess-winding-odd+ +tess-winding-nonzero+ +tess-winding-positive+ +tess-winding-negative+ +tess-winding-abs-geq-two+ +tess-max-coord+ begin-curve begin-polygon begin-surface begin-trim build-1d-mipmap-levels build-1d-mipmaps build-2d-mipmap-levels build-2d-mipmaps build-3d-mipmap-levels build-3d-mipmaps check-extension cylinder delete-nurbs-renderer delete-quadric delete-tess disk end-curve end-polygon end-surface end-trim error-string get-nurbs-property get-string get-tess-property load-sampling-matrices look-at new-nurbs-renderer new-quadric new-tess next-contour nurbs-callback nurbs-callback-data nurbs-callback-dataext nurbs-curve nurbs-property nurbs-surface ortho-2d partial-disk perspective pick-matrix project pwl-curve quadric-callback quadric-draw-style quadric-normals quadric-orientation quadric-texture scale-image sphere tess-begin-contour tess-begin-polygon tess-callback tess-end-contour tess-end-polygon tess-normal tess-property tess-vertex un-project un-project-4)) -(in-package :glu) +(in-package #:glu) (ignore-errors - (load-foreign-library '(:or "openglu32.dll" - (:default "libGLU") - (:default "openglu") - (:default "openglu32") - (:default "GLU") - (:default "glu")))) + (load-foreign-library '(:or "glu32.dll" + (:default "libGLU") + (:default "openglu") + (:default "GLU") + (:default "glu") + (:default "openglu32") + (:default "glu32")))) ;; Extensions (defconstant +ext-object-space-tess+ 1) (defconstant +ext-nurbs-tessellator+ 1) @@ -190,39 +191,25 @@ (defconstant +tess-winding-abs-geq-two+ 100134) ;; *********************************************************** (defconstant +tess-max-coord+ 1.0d150) + (defcfun ("gluBeginCurve" begin-curve) :void (nurb :pointer)) -(defcfun ("gluBeginPolygon" begin-polygon) :void (tess :pointer)) (defcfun ("gluBeginSurface" begin-surface) :void (nurb :pointer)) (defcfun ("gluBeginTrim" begin-trim) :void (nurb :pointer)) -(defcfun ("gluBuild1DMipmapLevels" build-1d-mipmap-levels) gl:int (target gl:enum) (internalFormat gl:int) (width gl:sizei) (format gl:enum) (type gl:enum) (level gl:int) (base gl:int) (max gl:int) (data :pointer)) (defcfun ("gluBuild1DMipmaps" build-1d-mipmaps) gl:int (target gl:enum) (internalFormat gl:int) (width gl:sizei) (format gl:enum) (type gl:enum) (data :pointer)) -(defcfun ("gluBuild2DMipmapLevels" build-2d-mipmap-levels) gl:int (target gl:enum) (internalFormat gl:int) (width gl:sizei) (height gl:sizei) (format gl:enum) (type gl:enum) (level gl:int) (base gl:int) (max gl:int) (data :pointer)) (defcfun ("gluBuild2DMipmaps" build-2d-mipmaps) gl:int (target gl:enum) (internalFormat gl:int) (width gl:sizei) (height gl:sizei) (format gl:enum) (type gl:enum) (data :pointer)) -(defcfun ("gluBuild3DMipmapLevels" build-3d-mipmap-levels) gl:int (target gl:enum) (internalFormat gl:int) (width gl:sizei) (height gl:sizei) (depth gl:sizei) (format gl:enum) (type gl:enum) (level gl:int) (base gl:int) (max gl:int) (data :pointer)) -(defcfun ("gluBuild3DMipmaps" build-3d-mipmaps) gl:int (target gl:enum) (internalFormat gl:int) (width gl:sizei) (height gl:sizei) (depth gl:sizei) (format gl:enum) (type gl:enum) (data :pointer)) -(defcfun ("gluCheckExtension" check-extension) gl:boolean (extName :pointer) (extString :pointer)) (defcfun ("gluCylinder" cylinder) :void (quad :pointer) (base gl:double) (top gl:double) (height gl:double) (slices gl:int) (stacks gl:int)) (defcfun ("gluDeleteNurbsRenderer" delete-nurbs-renderer) :void (nurb :pointer)) (defcfun ("gluDeleteQuadric" delete-quadric) :void (quad :pointer)) -(defcfun ("gluDeleteTess" delete-tess) :void (tess :pointer)) (defcfun ("gluDisk" disk) :void (quad :pointer) (inner gl:double) (outer gl:double) (slices gl:int) (loops gl:int)) (defcfun ("gluEndCurve" end-curve) :void (nurb :pointer)) -(defcfun ("gluEndPolygon" end-polygon) :void (tess :pointer)) (defcfun ("gluEndSurface" end-surface) :void (nurb :pointer)) (defcfun ("gluEndTrim" end-trim) :void (nurb :pointer)) (defcfun ("gluErrorString" error-string) :pointer (error gl:enum)) (defcfun ("gluGetNurbsProperty" get-nurbs-property) :void (nurb :pointer) (property gl:enum) (data :pointer)) -(defcfun ("gluGetString" get-string) :pointer (name gl:enum)) -(defcfun ("gluGetTessProperty" get-tess-property) :void (tess :pointer) (which gl:enum) (data :pointer)) (defcfun ("gluLoadSamplingMatrices" load-sampling-matrices) :void (nurb :pointer) (model :pointer) (perspective :pointer) (view :pointer)) (defcfun ("gluLookAt" look-at) :void (eyeX gl:double) (eyeY gl:double) (eyeZ gl:double) (centerX gl:double) (centerY gl:double) (centerZ gl:double) (upX gl:double) (upY gl:double) (upZ gl:double)) (defcfun ("gluNewNurbsRenderer" new-nurbs-renderer) :pointer ) (defcfun ("gluNewQuadric" new-quadric) :pointer ) -(defcfun ("gluNewTess" new-tess) :pointer ) -(defcfun ("gluNextContour" next-contour) :void (tess :pointer) (type gl:enum)) -(defcfun ("gluNurbsCallback" nurbs-callback) :void (nurb :pointer) (which gl:enum) (CallBackFunc :pointer)) -(defcfun ("gluNurbsCallbackData" nurbs-callback-data) :void (nurb :pointer) (userData :pointer)) -(defcfun ("gluNurbsCallbackDataEXT" nurbs-callback-dataext) :void (nurb :pointer) (userData :pointer)) (defcfun ("gluNurbsCurve" nurbs-curve) :void (nurb :pointer) (knotCount gl:int) (knots :pointer) (stride gl:int) (control :pointer) (order gl:int) (type gl:enum)) (defcfun ("gluNurbsProperty" nurbs-property) :void (nurb :pointer) (property gl:enum) (value gl:float)) (defcfun ("gluNurbsSurface" nurbs-surface) :void (nurb :pointer) (sKnotCount gl:int) (sKnots :pointer) (tKnotCount gl:int) (tKnots :pointer) (sStride gl:int) (tStride gl:int) (control :pointer) (sOrder gl:int) (tOrder gl:int) (type gl:enum)) @@ -237,16 +224,5 @@ (defcfun ("gluQuadricNormals" quadric-normals) :void (quad :pointer) (normal gl:enum)) (defcfun ("gluQuadricOrientation" quadric-orientation) :void (quad :pointer) (orientation gl:enum)) (defcfun ("gluQuadricTexture" quadric-texture) :void (quad :pointer) (texture gl:boolean)) -(defcfun ("gluScaleImage" scale-image) gl:int (format gl:enum) (wIn gl:sizei) (hIn gl:sizei) (typeIn gl:enum) (dataIn :pointer) (wOut gl:sizei) (hOut gl:sizei) (typeOut gl:enum) (dataOut :pointer)) (defcfun ("gluSphere" sphere) :void (quad :pointer) (radius gl:double) (slices gl:int) (stacks gl:int)) -(defcfun ("gluTessBeginContour" tess-begin-contour) :void (tess :pointer)) -(defcfun ("gluTessBeginPolygon" tess-begin-polygon) :void (tess :pointer) (data :pointer)) -(defcfun ("gluTessCallback" tess-callback) :void (tess :pointer) (which gl:enum) (CallBackFunc :pointer)) -(defcfun ("gluTessEndContour" tess-end-contour) :void (tess :pointer)) -(defcfun ("gluTessEndPolygon" tess-end-polygon) :void (tess :pointer)) -(defcfun ("gluTessNormal" tess-normal) :void (tess :pointer) (valueX gl:double) (valueY gl:double) (valueZ gl:double)) -(defcfun ("gluTessProperty" tess-property) :void (tess :pointer) (which gl:enum) (data gl:double)) -(defcfun ("gluTessVertex" tess-vertex) :void (tess :pointer) (location :pointer) (data :pointer)) (defcfun ("gluUnProject" un-project) gl:int (winX gl:double) (winY gl:double) (winZ gl:double) (model :pointer) (proj :pointer) (view :pointer) (objX :pointer) (objY :pointer) (objZ :pointer)) -(defcfun ("gluUnProject4" un-project-4) gl:int (winX gl:double) (winY gl:double) (winZ gl:double) (clipW gl:double) (model :pointer) (proj :pointer) (view :pointer) (nearVal gl:double) (farVal gl:double) (objX :pointer) (objY :pointer) (objZ :pointer) (objW :pointer)) - -- 2.11.4.GIT