public T GetExtensionFunction <T> (string name) where T : class { IntPtr addr = NativeMethods.clGetExtensionFunctionAddressForPlatform(this.handle, name); if (addr == IntPtr.Zero) { return(null); } return(Marshal.GetDelegateForFunctionPointer(addr, typeof(T)) as T); }