Implemented GL.SupportsFunction(MethodInfo).
This commit is contained in:
parent
132c2ab856
commit
89bfdd4568
1 changed files with 12 additions and 27 deletions
|
@ -335,39 +335,24 @@ namespace OpenTK.Graphics
|
|||
|
||||
#endregion
|
||||
|
||||
#region static bool SupportsFunction(Type function)
|
||||
#region static bool SupportsFunction(MethodInfo function)
|
||||
|
||||
/// <summary>
|
||||
/// Checks if a given OpenGL function is supported by the current context
|
||||
/// Checks if a given OpenGL function is supported by the current context.
|
||||
/// </summary>
|
||||
/// <param name="method">The System.Reflection.MethodInfo of the OpenGL function.</param>
|
||||
/// <returns>True if the function is supported, false otherwise</returns>
|
||||
static bool SupportsFunction(MethodInfo method)
|
||||
/// <param name="method">The System.Reflection.MethodInfo for the OpenGL function.</param>
|
||||
/// <returns>True if the function is supported, false otherwise.</returns>
|
||||
static bool SupportsFunction(MethodInfo function)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
#if false
|
||||
lock (gl_lock)
|
||||
{
|
||||
|
||||
if (function == null)
|
||||
throw new ArgumentNullException("function");
|
||||
|
||||
sb.Remove(0, sb.Length);
|
||||
if (!function.Name.StartsWith("gl"))
|
||||
sb.Append("gl");
|
||||
sb.Append(function);
|
||||
//if (!function.EndsWith(extension))
|
||||
// sb.Append(extension);
|
||||
|
||||
FieldInfo f = delegatesClass.GetField(sb.ToString(), BindingFlags.Static | BindingFlags.NonPublic);
|
||||
if (f == null)
|
||||
AutoGeneratedAttribute[] attr = (AutoGeneratedAttribute[])
|
||||
function.GetCustomAttributes(typeof(AutoGeneratedAttribute), false);
|
||||
if (attr.Length == 0)
|
||||
return false;
|
||||
|
||||
return f.GetValue(null) != null;
|
||||
|
||||
return false;
|
||||
}
|
||||
#endif
|
||||
return SupportsFunction(attr[0].EntryPoint);
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
|
Loading…
Reference in a new issue