Commit graph

447 commits

Author SHA1 Message Date
Stefanos A. f65965aaf7 Fixed ShaderSource and VertexArrayFogCoordOffsetEXT parameters.
ShaderSource is supposed to accept an array of string lengths as the
last parameter. The count="1" statement in the registry is wrong.
GL.VertexArrayFogCoordOffsetEXT is supposed to receive a
FogPointerType.
2013-10-25 16:30:20 +02:00
Stefanos A. 0aa0d5ab6c Check the existence of a Constant reference using the
Constant.Reference property, instead of the first character of
Constant.Value. Fixes values that are negative numbers.
2013-10-25 08:57:33 +02:00
Stefanos A. 078a1e8443 Allow spaces in pointer types (e.g. "GLchar * *").
Added todo for string->String translation that is overwritten
immediately.
2013-10-25 08:52:34 +02:00
Stefanos A. 06d2de3e7b Fixed translation of GLchar** (should be string[], not string). Added
diagnostic message in case of higher-order pointer parameters that
will currently generate incorrect bindings.
2013-10-25 08:48:24 +02:00
Stefanos A. a162ee5b1b Added DEBUGPROCKHR for the KHR_debug extension. Added
CompressedTextureARB that is encountered in the new gl.xml registry.
2013-10-25 08:47:17 +02:00
Stefanos A. e08baaa624 Fixed implementation of IsValue. Improved the handling of value
(number) parameters.
2013-10-25 08:45:02 +02:00
Stefanos A. 7296edafac Added support for overriding the element count of an array parameter. 2013-10-24 22:42:12 +02:00
Stefanos A b5aff5dfaf Don't crash on non-numeric element counts. 2013-10-24 18:50:19 +02:00
Stefanos A. 645abc5ab1 Improved diagnostic message in case of a circular definition. 2013-10-24 18:46:58 +02:00
Stefanos A 8107abeb01 Updated gl4 documentation according to latest manpages 2013-10-24 09:03:15 +02:00
Stefanos A af9d6dd928 Fixed ClearTex[Sub]Image <type> parameter
As per bug #1006 on the public Khronos bugzilla, <type> corresponds to the PixelType accepted by TexImage3D. This is now fixed.
2013-10-24 09:01:59 +02:00
Stefanos A. 60afa79203 Updated documentation according to the latest available manpages. 2013-10-23 20:17:08 +02:00
Stefanos A. eb84a29206 Implemented "Debug Output" and "State and State Requests"
functionality according to the OpenGL 4.4 specification, sections 20
and 22.
2013-10-23 20:12:05 +02:00
Stefanos A. 3037baa5ea Implemented "Reading and Copying Pixels" functionality from the OpenGL
4.4 specification, sections 18.2 and 18.3.
2013-10-23 18:54:34 +02:00
Stefanos A. b425bff682 Implemented Whole Framebuffer commands according to the OpenGL 4.4
specification, section 17.4.
2013-10-23 11:43:11 +02:00
Stefanos A. a005fab243 Prefer overrides with exact name matches over generic name matches.
For instance, if we override both ClearBufferfi and ClearBuffer, then
ClearBuffer{i f ui}v will be overriden be ClearBuffer and
ClearBufferfi will be overriden by ClearBufferfi. This allows us to
specialize overrides when necessary.
2013-10-23 11:42:24 +02:00
Stefanos A. 86214ebc77 Implemented per-fragment operations according to the OpenGL 4.4
specification, section 17.
2013-10-23 10:49:29 +02:00
Stefanos A. 1585d6a02e Implemented Vertex Post-Processing according to the OpenGL 4.4
specification, section 13.
2013-10-23 10:23:02 +02:00
Stefanos A. bb2bf9fa48 Implemented Vertex Attributes according to the OpenGL 4.4
specification, section 11.
2013-10-23 09:43:33 +02:00
Stefanos A. 88183770ae Implemented Vertex Arrays accordign to the OpenGL 4.4 specification,
section 10.
2013-10-23 09:31:09 +02:00
Stefanos A. 35b63e777a Fixed version number on VertexAttribP1 methods (should be 3.3, not
1.2).
2013-10-22 21:10:14 +02:00
Stefanos A. 18643b8f1d Allow version attribute in overrides.xml. 2013-10-22 21:09:18 +02:00
Stefanos A. 745fd9974f Implemented strongly-typed Framebuffer and Renderbuffer Objects
according to the OpenGL 4.4 specification, section 9.
2013-10-22 20:52:37 +02:00
Stefanos A. 5a59e63cea Implemented strongly-typed Texture functions according to the OpenGL
4.4 specification, section 8. See issue #2.
2013-10-22 18:37:25 +02:00
Stefanos A. badb083686 Added SGIX_texture_icc enumeration that has been removed by the
upstream specs. This silences a large amount of warnings caused by the
lack of this extension.
2013-10-22 17:19:19 +02:00
Stefanos A 907a1de89f Line ending fix. 2013-10-22 17:03:16 +02:00
Stefanos A. 43bde3433a Implemented strong-types for Shader and Program Objects according to
the OpenGL 4.4 specification, section 7.
2013-10-22 16:52:35 +02:00
Stefanos A. 9613975681 Updated strong-types for Buffer Objects according to the OpenGL 4.4
spec, section 6.
2013-10-22 14:40:49 +02:00
Stefanos A. cfa4f230c5 Updated strong-types for asynchronous queries, query objects and time
queries according to OpenGL 4.4 spec, section 4.2.
2013-10-22 14:00:01 +02:00
Stefanos A. 9685f6e2f0 Array overloads with count=1 should be turned into ref/out parameters.
This fixes an issue where arrays with count=1 would remain as unsafe
pointers instead of becoming ref/out parameters.
2013-10-22 13:41:31 +02:00
Stefanos A. 15120f3bef Updated to the latest 4.3 .spec files from the OpenGL registry. 2013-10-22 11:56:08 +02:00
Stefanos A. 8404359bca Updated to the latest gl.tm from Khronos public svn. 2013-10-22 11:39:50 +02:00
Stefanos A. 39c2230bfa Re-added BeginMode and PixelFormat enums which were removed by the
OpenGL spec.
Added strong types for sync and fence objects (4.4 core specification,
section 4.1).
2013-10-22 11:39:20 +02:00
Stefanos A. 61fd8d6122 Added ConstCharPointer->string transformation in accordance to GL 4.3
specs.
2013-10-21 21:43:05 +02:00
Stefanos A. 98504ce67a Added DebugProc delegate in accordance to GL 4.3 specs. 2013-10-21 21:42:09 +02:00
thefiddler 8dcb8601a2 Normalized line endings
Hopefully this is the first and last time we have to do this.
2013-10-11 01:58:54 +02:00
Robert Rouhani 3a9dfc62ad Fixed extra endregion directive that prevented compilation.
Fixed some warnings about csproj files.
2013-01-16 22:11:18 -08:00
Andy Korth 4230c6b4f0 Added Robmaister's Matrix3 implementations 2013-01-03 10:41:56 -06:00
the_fiddler 0df6d56f03 Removed invalid TextureParameterName.Red token. Fixes issue [#2789]: "TextureParameterName.Red". 2011-12-07 00:28:13 +00:00
the_fiddler 1ace769646 Further improvements to suffix trimming regexes. Now matches GetInteger(ui)64 and does not match functions ending in "Coord", "Attrib", "Access" and more. 2011-12-07 00:22:10 +00:00
the_fiddler 59cfdf4664 Ensured function names are trimmed using the same code as documentation and function parameters.
Improved trimming for functions with '64' suffices.
2011-12-07 00:01:48 +00:00
the_fiddler 5ee3013e49 Process overrides to Constant.Reference. 2011-12-06 22:59:42 +00:00
the_fiddler e2d31c78cb Added missing TextureEnvMode.Replace token. Fixes issue [#2791]: "TextureEnvMode.Replace missing". 2011-12-06 21:49:43 +00:00
the_fiddler bf90e156f3 Fixed extension (and core) loading on windows. 2011-12-06 15:14:58 +00:00
the_fiddler d8432cc521 Significant cleanups and bugfixes to the C++ wrappers. Improved typemap to use correct OpenGL types. 2011-12-05 18:43:16 +00:00
the_fiddler fbb17d9815 Added GL and CL to Acronyms regex. 2011-12-05 18:42:38 +00:00
the_fiddler 5ef382c043 Added cpp-specific typemap. 2011-12-05 18:42:13 +00:00
the_fiddler ce55a9920e Do not rely on JNA types that are not available on Android. 2011-12-05 18:41:46 +00:00
the_fiddler 082fc8c422 Do not rely on JNA types that are not available on Android.
Replaced generic multiple wrappers by a single Buffer wrapper.
2011-12-05 16:12:54 +00:00
the_fiddler cb06e36785 Fixed enum generation. 2011-12-05 15:48:51 +00:00
the_fiddler 687140323e Fixed bug in acronym capitalization handling, when multiple acronyms exist in the same enum. 2011-12-05 15:16:11 +00:00
the_fiddler 17974b6c7b Improved capitalization of acronyms, like 3Tc, in enum names. 2011-12-05 15:04:01 +00:00
the_fiddler 43c4f38e2d Simplified the ISpecReader interface. Ensure 'delete' directives are followed in the xml specs. 2011-12-05 14:30:40 +00:00
the_fiddler e8a4bdb2b1 Minor comment fix. 2011-12-05 14:29:17 +00:00
the_fiddler d32a9ae03b Generic type parameters cannot be primitive types in Java. Fixed! 2011-12-05 13:28:17 +00:00
the_fiddler 6bd6877a97 Fixed generic type parameters (for real this time!), suppressed pointer parameters and shuffled code for improved readability. 2011-12-05 13:03:48 +00:00
the_fiddler 14c56427ed Fixed generic parameter definitions. 2011-12-05 12:27:23 +00:00
the_fiddler aa40b760df Added "callback" to Java reserved keywords. 2011-12-05 12:26:54 +00:00
the_fiddler b80b920f90 Significant improvements to the Java wrappers: generate a package, improve wrapper generation taking into account lack of ref/out parameters. 2011-12-05 11:54:06 +00:00
the_fiddler e8b53ade10 Use Parameter.RawName when accessing the spec xml files (these files are platform-agnostic, so parameter names are not escaped!) 2011-12-05 11:52:28 +00:00
the_fiddler 154ce76303 Made the escape character for reserved keywords customizable. (C# uses '@' and Java/C++ use '_' by default). Updated the Parameter class to return escaped names by default and added a RawName parameter to access the raw names. 2011-12-05 11:49:59 +00:00
the_fiddler 6443b271dd Added missing function declarations (WIP). 2011-12-02 14:49:26 +00:00
the_fiddler 1fa6a05c60 Added support for different per-language typemaps. 2011-12-02 13:12:53 +00:00
the_fiddler 6f1b8c11a2 Added preliminary Java wrapper generation. Heavy work-in-progress. 2011-12-02 11:27:04 +00:00
the_fiddler 442a17d799 Fixed encoding error that prevent compilation on Linux. 2011-09-26 13:23:19 +00:00
the_fiddler 52678e9479 Modified CppSpecWriter to generate single-file bindings. 2011-09-26 11:18:57 +00:00
the_fiddler f4f0b97f7c Added UniformBlockReferencedByGeometryShader token to ActiveUniformBlockParameter. Fixes issue [#2616]: "ActiveUniformBlockParameter.UniformBlockReferencedByGeometryShader is missing". 2011-07-26 14:09:12 +00:00
the_fiddler 97f47e8cdc Added ColorWritemask to GetIndexedPName. Fixes issue [#2509]: "Missing GetIndexedPName.ColorWritemask as GetBoolean parameter". 2011-07-26 12:35:50 +00:00
the_fiddler 43afd8cf57 Added missing tokens for ARB_texture_buffer_object (core since GL3.1). Fixes issue [#2615]: "GetPName.MaxTextureBufferSize is missing". 2011-07-26 12:14:17 +00:00
the_fiddler 6f53e40a5a Updated OpenGL signatures using gl.spec revision 15037 (06 July 2011). 2011-07-26 11:55:13 +00:00
the_fiddler 55324777ca Added documentation comments to generated enums.
Improved ISpecWriter API by removing low-level implementation details.
Made Constant implement IComparable so it can be sorted before being written to output.
2011-07-20 10:10:33 +00:00
the_fiddler 91519cb62b * Structures/Enum.cs: Marked code that needs to be refactored. 2011-07-20 10:08:27 +00:00
the_fiddler 2fc35f4d70 Add APIENTRY to allow calling convention definitions. 2010-12-07 01:26:11 +00:00
the_fiddler 30238a15b7 Use namespaces instead of structs, since C++ does not support partial structures (which are necessary for the core/compatibility split). 2010-12-06 22:32:47 +00:00
the_fiddler 43b2f2ea9b Keep a reference to the file being read. 2010-12-06 22:32:11 +00:00
the_fiddler fabd5fb470 Improved argument parsing code. 2010-12-06 15:19:45 +00:00
the_fiddler 355f5beb7b Do not reuse a single StreamReader for reading signatures. Avoids issues with XPathDocument closing the stream behind our backs. 2010-12-06 14:34:16 +00:00
the_fiddler 9290714716 * XmlSpecReader.cs:
* EnumProcessor.cs:
* GL2/Generator.cs:
* FuncProcessor.cs: Fixed handling of overrides file: we now add
  signatures as requested and reset the stream after we are done
  reading the file.
2010-12-06 12:29:18 +00:00
the_fiddler 4c8ab01b01 * EnumProcessor.cs:
* FuncProcessor.cs: Corrected the XPath for signature overrides.
2010-12-06 11:53:50 +00:00
the_fiddler 54f940a82a * CppSpecWriter.cs: Do not use macros to define enumerations, as
this makes debugging difficult.
2010-12-06 10:26:06 +00:00
the_fiddler cdec8f54dc * CppSpecWriter.cs: Do not allow namespaces that start with a digit. 2010-12-06 09:52:05 +00:00
the_fiddler 9d85ba0f98 * CppSpecWriter.cs: Added inclusion guards to gldefs++ header. 2010-12-06 00:50:36 +00:00
the_fiddler 1ba7a853a4 * CppSpecWriter.cs: Renamed output files to gldef++.
Added preprocessor macros for enum generation.
2010-12-06 00:46:23 +00:00
the_fiddler aedaeb1276 * Main.cs: Do not use "/" as a separator, because this breaks
filesystem paths on Unix.
2010-12-05 22:58:20 +00:00
the_fiddler 4d14448bbf * CppSpecWriter.cs: Fixed indentation for #if-#endif directives. 2010-12-05 22:58:05 +00:00
the_fiddler f9528892ae * CppSpecWriter.cs: Fixed enumeration of deprecated functions.
Fixed declaration of Init() methods.
2010-12-05 16:28:30 +00:00
the_fiddler b2d603efa8 * CppSpecWriter.cs: Fixed namespace paths for delegate loader. 2010-12-05 16:19:49 +00:00
the_fiddler 6b0784c6ca * CppSpecWriter.cs: Replace String[] parameters by String*, as the
former is not valid C++ syntax.
2010-12-05 16:03:42 +00:00
the_fiddler e23230de06 * CppSpecWriter.cs: Remove unnecessary transformation for namespace
separators.
2010-12-05 15:54:14 +00:00
the_fiddler fa0a7b5eec * FuncProcessor.cs:
* Structures/Parameter.cs: Avoid qualifying IntPtr fully ((a) it's
  unnecessary, since we have "using System;" already and (b) the
  namespace qualification is not portable to C++).
2010-12-05 15:53:04 +00:00
the_fiddler 95a906647e * Main.cs:
* Settings.cs:
* FuncProcessor.cs:
* Structures/Type.cs:
* Structures/Constant.cs:
* Structures/Delegate.cs: Do not hardcode namespace separator to ".".
2010-12-05 15:45:23 +00:00
the_fiddler 84dcb6395f * CppSpecWriter.cs: Fixed handling of return types in wrappers.
Removed [OutAttribute] from the header.
2010-12-05 15:33:09 +00:00
the_fiddler c43b148431 * CppSpecWriter.cs: FIxed handling of enum parameters.
Moved delegates to private structures.
2010-12-05 15:26:54 +00:00
the_fiddler c765eaeb55 * CppSpecWriter.cs: Added definitions for GL types. 2010-12-05 11:52:51 +00:00
the_fiddler 5b4df1cdaa * CppSpecWriter.cs: Move 3dfx namespace to T3dfx, since namespaces
may not start with a digit.
2010-12-05 11:32:49 +00:00
the_fiddler e8daa7bcfa * Main.cs:
* Settings.cs:
* Utilities.cs: Use separate keyword lists for each language.
2010-12-05 11:24:05 +00:00
the_fiddler 441c2cc15f * CppSpecWriter.cs: Fixed declaration of function pointers. Modified
to use the delegate-wrapper paradigm, instead of exposing function
  pointers directly. This way we can rely on the compiler for overload
  resolution.
2010-12-05 10:47:06 +00:00
the_fiddler 7469180c13 * Specifications/License.txt: Removed #region-#endregion from the
license file, in order to make it compatible with C++.
2010-12-05 10:46:09 +00:00
the_fiddler b4834360cc * CppSpecWriter.cs: Defined Init() methods, declared all OpenGL
functions and fixed the formatting of the header.
2010-12-05 09:51:36 +00:00
the_fiddler 4a5313ad47 * CppSpecWriter.cs: Added constructor declaration. 2010-12-05 09:08:57 +00:00