Commit graph

1682 commits

Author SHA1 Message Date
the_fiddler
52263700fd Added BindingsBase class that provides a common base for all generated bindings.
Made the OpenGL and OpenGL|ES bindings non static.
Made the OpenGL and OpenGL|ES bindings inherit from BindingsBase.
2009-08-17 10:20:42 +00:00
the_fiddler
235a12d549 Now use "Core" as default Settings.ImportsClass. 2009-08-17 10:15:29 +00:00
the_fiddler
3c68f9fb99 Now use "Core" as default Settings.ImportsClass. 2009-08-17 10:15:22 +00:00
the_fiddler
486c42168a Manually check for OpenGL version. Removed TextPrinter references. 2009-08-17 09:57:43 +00:00
the_fiddler
b599535679 Manually check for OpenGL extension support.
Removed TextPrinter reference.
2009-08-17 09:56:43 +00:00
the_fiddler
7f7662cfb8 Manually check OpenGL version. 2009-08-17 09:56:16 +00:00
the_fiddler
5e80a061b8 Implemented INativeWindow.WindowBorderChanged and INativeWindow.WindowStateChanged events. 2009-08-17 09:34:15 +00:00
the_fiddler
878dd4394c Disabled TextPrinter samples.
Removed TextPrinter references.
2009-08-17 09:32:50 +00:00
the_fiddler
14f963b257 Note that parameter names for Nvidia fence extension were added by hand. 2009-08-15 19:08:03 +00:00
the_fiddler
82b8b6a518 Added missing parameter names to Nvidia Fence extension. 2009-08-15 19:07:34 +00:00
the_fiddler
f4e80dec64 Added workarounds for typical header defines that should not be present in the generated xml files (e.g. #define WIN32_LEAN_AND_MEAN 1). 2009-08-15 19:07:11 +00:00
the_fiddler
6ec4026a5c Updated documentation to remove references to the 3.1 specification (this class always supports the full profile of the latest specification.) 2009-08-15 18:02:16 +00:00
the_fiddler
9bcace599e Normalized line endings. 2009-08-15 18:01:15 +00:00
the_fiddler
dc877c5bfe Fixed Matrix4.CreatePerspectiveFieldOfView calls to use radians instead of degrees. 2009-08-15 17:52:49 +00:00
the_fiddler
86df4cf0fd Regenerated bindings to fix CLSCompliance issues. 2009-08-15 17:51:03 +00:00
the_fiddler
51179c6518 Added missing types to list of non-CLSCompliant types. 2009-08-15 17:41:25 +00:00
the_fiddler
310b36ac65 Regenerated bindings using the latest generator updates. 2009-08-15 17:37:56 +00:00
the_fiddler
aa500ce806 Fixed compilation errors.
Moved bindings to the GL class.
2009-08-15 17:37:18 +00:00
the_fiddler
4021e67dc1 Removed "static" identifier from main wrappers class (add, if necessary, through the Helper.cs). 2009-08-15 17:35:20 +00:00
the_fiddler
a1fc84600c Removed spurious constants. 2009-08-15 17:33:13 +00:00
the_fiddler
00629ecbf7 Added GLeglImageOES type. 2009-08-15 17:32:49 +00:00
the_fiddler
5eb9d7242b Do not allow constant names to start with numbers. 2009-08-15 17:32:35 +00:00
the_fiddler
e4dc363d24 Fixed Nvidia fences extension (did not specify parameter names). 2009-08-15 17:16:04 +00:00
the_fiddler
36cce81ba5 Removed the various GetProcAddress methods (now handled by IGraphicsContextInternal).
Removed Imports nested class.
2009-08-15 16:56:36 +00:00
the_fiddler
57c430fc36 Regenerated bindings using the latest generator updates.
ES bindings now exist in ES10.GL, ES11.GL and ES20.GL classes instead of ES10.ES etc (reason: easier porting to/from regular OpenGL).
2009-08-15 16:55:53 +00:00
the_fiddler
af1973537a Modified CreateX11WindowInfo to check GraphicsMode.Index.HasValue prior to using it. 2009-08-15 16:46:33 +00:00
the_fiddler
115e51f175 Implemented EglContext construction according to AMD's OpenGL|ES samples. 2009-08-15 16:45:59 +00:00
the_fiddler
a518866d5a Added OutAttribute to array parameters that return values.
Added Egl.GetProcAddress method.
2009-08-15 16:45:21 +00:00
the_fiddler
0204082308 Modified GraphicsMode.Index to be a nullable property. Modified consuming classes to check Index.HasValue prior to first use. 2009-08-15 16:44:43 +00:00
the_fiddler
ffdddf86d6 Made GraphicsMode query non-eager. The GraphicsMode will only be queried on first access of its Index property, for example when creating an X11 window or a new GraphicsContext. 2009-08-15 16:03:54 +00:00
the_fiddler
59d6ad7b3a Added documentation. 2009-08-15 16:02:52 +00:00
the_fiddler
ebc889f9d3 Replaced libGLES.dll by libGLESv2.dll, which is provided by AMD's OpenGL|ES emulator. 2009-08-14 15:33:39 +00:00
the_fiddler
0e18ddfc81 Removed duplicate GetConfigAttrib calls. 2009-08-14 15:32:38 +00:00
the_fiddler
ede71114f7 Use Egl.GetDisplay to get a display connection from an EGLNativeDisplayType. 2009-08-14 15:19:37 +00:00
the_fiddler
e110c32ff8 Replaced libGLES_CM.dll by libEGL.dll, which is provided by the AMD OpenGL|ES emulator. 2009-08-14 15:17:42 +00:00
the_fiddler
ac70d985a7 Renamed GL folder to OpenGL, in order to match namespace. 2009-08-14 14:24:18 +00:00
the_fiddler
95d4f695b7 Fixed GraphicsContextFlags.Embedded matching. 2009-08-14 14:18:30 +00:00
the_fiddler
1beceffa2a Added mathematical constants used by XNA (Pi, E, logarithms).
Removed unused code.
2009-08-14 14:15:30 +00:00
the_fiddler
84a42514e8 Ensure UnsupportedPlatform is used for Factory.Embedded if OpenGL|ES is not supported. 2009-08-14 14:10:56 +00:00
the_fiddler
0e02f67749 Moved OpenTK.Graphics.GL class to the OpenTK.Graphics.OpenGL namespace (reason: necessary for OpenGL|ES support; necessary for support of different OpenGL profiles). OpenTK.Graphics.GL has been moved to the OpenTK.Compatibility library.
Removed OpenTK.Graphics.Glu class (reason: deprecated upstream; most functionality provided by OpenTK math; not compatible with OpenGL 3.0+.) OpenTK.Graphics.Glu can be accessed through OpenTK.Compatibility.
Added OpenGL|ES-specific ErrorHelper classes.
Moved OpenTK.Graphics.DisplayDevice and OpenTK.Graphics.DisplayResolution to the root OpenTK namespace (reason: their functionality is not specific and does not depend on OpenTK.Graphics).
Split Graphics*Exception classes into different files.
Made GraphicsErrorException public (reason: necessary for OpenTK.Compatibility).
2009-08-14 13:13:28 +00:00
the_fiddler
1965ab96fd Marked OpenTK.Compatibility math functions as obsolete. 2009-08-14 12:58:35 +00:00
the_fiddler
87b2fe1a9d Obsoleted OpenTK.Functions in favor of OpenTK.MathHelper (reason: XNA compatibility).
Added Matrix4.LookAt overload that does not use Vector3 parameters.
2009-08-14 12:37:18 +00:00
the_fiddler
df0d9d1a4e Added OpenTK.Compatibility project to provide an upgrade path from 0.9.8. 2009-08-14 12:29:30 +00:00
the_fiddler
c4554bd804 Added support for IPlatformFactory implementations for embedded devices that use EGL. The embedded implementation can be used side-by-side with the normal implementations (useful for platforms that support both desktop GL and EGL). 2009-08-13 11:52:51 +00:00
the_fiddler
686b63a420 Added GraphicsContextFlags.Embedded for OpenGL|ES. 2009-08-13 11:41:32 +00:00
the_fiddler
6ad2a3e012 Normalized line endings. 2009-08-13 11:41:14 +00:00
the_fiddler
0f382fd86c Added IsSupported property, which checks for the existence of EGL libraries. 2009-08-13 11:40:16 +00:00
the_fiddler
396b9820a3 * Egl.cs: Added workaround for gmcs 2.4.2 bug #530270 (https://bugzilla.novell.com/show_bug.cgi?id=530270). 2009-08-12 10:58:23 +00:00
the_fiddler
7c795eeb63 Regenerated OpenCL bindings with the compilation fixes for gmcs 2.0. 2009-08-12 10:13:51 +00:00
the_fiddler
3040a59436 * Main.cs: Accept -mode:cl as an alias for -mode:cl10 2009-08-12 10:12:44 +00:00
the_fiddler
4b05db2631 * Generator.cs: Use correct function prefix in AutoGenerated
attribute.
2009-08-12 10:12:16 +00:00
the_fiddler
336d6b4bef * Type.cs: Updated list of non CLS-compliant types.
* Parameter.cs: Changed [In] and [Out] attributes to [InAttribute] and
  [OutAttribute] to work around strange gmcs 2.0 bug.
2009-08-12 10:11:41 +00:00
the_fiddler
6f57ac0f6d * BindStreamWriter.cs: Fixed workaround for indentation on Linux (indentation seems to be applied twice). 2009-08-12 08:33:49 +00:00
the_fiddler
9c0a472ba7 Ensure Wgl core entry points are loaded prior to first use, even without a Wgl context.
Do not query actual GraphicsMode.Default in DummyGLContext constructor. Doing so creates a temporary context, which should not be done when creating a dummy context.
Fixed issue [#993]: "Possible bug in GraphicsContext.CreateDummyContext()".
2009-08-11 21:45:32 +00:00
the_fiddler
0d1f5ac7ab Bumped version number. 2009-08-11 21:16:49 +00:00
the_fiddler
7d37c2e68f Missed part of the refactored X11 bindings. 2009-08-11 21:15:29 +00:00
the_fiddler
dd612a2001 Added missing license information. Made public. Added documentation. 2009-08-11 21:11:46 +00:00
the_fiddler
6e7c2a2e3e Suppressed documentation warnings and ensured public structures follow the class library design guidelines. 2009-08-11 21:11:39 +00:00
the_fiddler
4b9e25af03 Made types used by X11WindowInfo public. 2009-08-11 21:02:52 +00:00
the_fiddler
a8f099e035 Added missing license information and removed unused code. 2009-08-11 20:57:54 +00:00
the_fiddler
fbec76e858 Made class public.
Added missing license information.
2009-08-11 20:55:43 +00:00
the_fiddler
2aa3c947cb Added missing license information. 2009-08-11 20:55:13 +00:00
the_fiddler
dcb89cb4fb Removed unused code. 2009-08-11 20:51:02 +00:00
the_fiddler
cf6529532e Bumped version number 2009-08-11 20:44:32 +00:00
the_fiddler
16f209497b Added support for OpenCL samples.
Added VectorAdd sample.
Bumped version number.
2009-08-11 20:18:05 +00:00
the_fiddler
1df3101a47 Added loading code for OpenCL entry points. 2009-08-11 20:16:28 +00:00
the_fiddler
ea6a4479e5 Removed hand-written OpenCL bindings in favor of generated ones. 2009-08-11 19:27:28 +00:00
the_fiddler
ed48992d81 Generated OpenCL bindings with fixed function pointers. 2009-08-11 19:26:27 +00:00
the_fiddler
6492945554 Mapped uchar to byte. 2009-08-11 19:25:26 +00:00
the_fiddler
31f20422d1 Added several more overrides to change "int errcode_ret" to "ErrorCode errcode_ret". 2009-08-11 19:24:44 +00:00
the_fiddler
5ffb2ebcc9 Regenerated signatures using the latest fixes for function pointer parameters. All methods with function pointers should be now correct. 2009-08-11 19:18:51 +00:00
the_fiddler
6fe9641033 Fixed parsing of function pointer parameters that do not specify a parameter name or do not contain "pfn" in their type. 2009-08-11 19:18:12 +00:00
the_fiddler
3897c7c990 Deactivated debugging code. 2009-08-11 18:53:45 +00:00
the_fiddler
c6b69df7d0 Regenerated bindings with fixed function pointers. 2009-08-11 18:51:43 +00:00
the_fiddler
12f85bb212 Try to match function pointers before regular parameters. Function pointers may contain regular parameters themselves and going the other way round will result in incorrect matches. 2009-08-11 18:51:19 +00:00
the_fiddler
f7b9a75b6e Fixed parsing of function pointers. 2009-08-11 18:05:43 +00:00
the_fiddler
be52c2776b Added support for empty or null typemaps. 2009-08-11 15:33:17 +00:00
the_fiddler
a08edd47fc Renamed CommandQueuePropertiesFlags to CommandQueueFlags. 2009-08-11 15:31:10 +00:00
the_fiddler
cf4d93cb43 Added generated bindings for OpenCL 1.0. 2009-08-11 14:21:35 +00:00
the_fiddler
5bce03e785 Bumped version number. 2009-08-11 14:20:46 +00:00
the_fiddler
fcaff2477b Reverted commit 2028 (Jonathan's formatting patch for Bind output), since it broke formatting on Windows. Added temporary workaround until the real cause of the issue is discovered and fixed. 2009-08-11 14:17:27 +00:00
the_fiddler
cdde2893f6 Added support for enum overrides.
Enabled enum overrides in the CL and ES generators.
Function parameters now follow enum overrides (for example, if function Foo takes enum Bar and enum Bar is overriden to Baz, this change will be reflected on function Foo).
Changed default CLGenerator settings to not generate debug helpers.
2009-08-11 14:12:20 +00:00
the_fiddler
000bdf71ef Added PreviousName property.
Moved value parsing to the Name property instead of implementing in each and every ISpecReader.
2009-08-11 14:08:18 +00:00
the_fiddler
1edfbdb928 Improved handling of multiple indirection (pointer-to-pointer, pointer-to-array or any other combination up to 4 levels of indirection).
Made the generation of debug helpers optional. They are currently specific to OpenTK.Graphics and need more work before they can be used with OpenTK.Compute or OpenTK.Audio.
2009-08-11 14:06:40 +00:00
the_fiddler
16e1f279dc Added EnumPrefix setting, which may be different from ConstantPrefix or FunctionPrefix. Can be used to remove the Gl, Cl, Al, etc prefixes from enum names. 2009-08-11 14:03:55 +00:00
the_fiddler
0137c05d9a Added missing OpenCL types. 2009-08-11 14:02:44 +00:00
the_fiddler
2b596d3541 Added overrides for several OpenCL methods that return error codes (they returned plain integers previously).
Added overrides for problematic values in 'Unknown' enum.
Added overrides for string[] parameters.
2009-08-11 14:02:10 +00:00
the_fiddler
42bb893464 Regenerated signatures (now contain flow for function parameters). 2009-08-11 14:01:06 +00:00
the_fiddler
560c22accf Regenerated signatures. 2009-08-11 13:53:56 +00:00
the_fiddler
fda040799e ESCLParser can now parse negative enum constants.
ESCLParser can now parse bitfield constants in the form (1 << n).
Added a workaround for enums named as "FooFlags - bitfield" which where converted to "FooFlagsFlags". They are now converted to "FooFlags".
Added flow attribute to function parameters. Parameter names ending with "ret" (e.g. errcode_ret) have a flow of "out". Everything else currently has a flow of "in".
Fixed conversion of "unsigned [byte|short|int|long]" parameters (they are now converted to [byte|ushort|uint|ulong] respectively).
2009-08-11 13:53:01 +00:00
the_fiddler
11027985ad Merged fix for issue [#1074]: " X11XrandrDisplayDevice on Xming ---> Argument is out of range." from 0.9.8 branch. 2009-08-10 11:36:26 +00:00
the_fiddler
0cb61c5a82 Merged fix for issue [#1089]: "TextPrinter is affected by TextureGen* and TextureEnvMode" from 0.9.8 branch. 2009-08-09 18:54:35 +00:00
the_fiddler
1404abb8ca Now uses 'cl' prefix instead of 'gl' for OpenCL bindings.
Fixed handling of output directory.
2009-08-09 17:57:01 +00:00
the_fiddler
e98e8656e4 Added OpenCL types to the typemap. 2009-08-09 17:56:20 +00:00
the_fiddler
3a45e6214e Deleted CL directory (has been renamed to CL10). 2009-08-09 17:55:32 +00:00
the_fiddler
2469c62016 Moved AutoGeneratedAttribute to root namespace (it is now used by more than just OpenTK.Graphics). 2009-08-09 17:55:11 +00:00
the_fiddler
68fcad4929 Parameter name "event" is not allowed in .Net. Replaced with "@event". 2009-08-09 17:47:15 +00:00
the_fiddler
63a7a65fee Updated OpenCL signatures. 2009-08-09 17:36:26 +00:00
the_fiddler
4633be3908 Fixed parsing of OpenCL parameters with set array size. 2009-08-09 17:35:50 +00:00
the_fiddler
bc469dcd46 Fixed parsing of pointer types in 'cl.h' (parameter types and pointers are separated by a space, i.e. 'char **'). 2009-08-09 17:13:34 +00:00