1<?xml version="1.0" encoding="UTF-8" standalone="no"?> 2<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"> 3 <head> 4 <title xmlns:xlink="http://www.w3.org/1999/xlink">eglGetProcAddress - EGL Reference Pages</title> 5 <link rel="stylesheet" type="text/css" href="khronos-man.css"/> 6 <meta name="generator" content="DocBook XSL Stylesheets V1.79.1"/> 7 </head> 8 <body> 9 <header/> 10 <div class="refentry" id="eglGetProcAddress"> 11 <div class="titlepage"/> 12 <div class="refnamediv"> 13 <h2>Name</h2> 14 <p>eglGetProcAddress — 15 return a <abbr class="acronym">GL</abbr> or an <abbr class="acronym">EGL</abbr> 16 extension function 17 </p> 18 </div> 19 <div class="refsynopsisdiv"> 20 <h2>C Specification</h2> 21 <div class="funcsynopsis"> 22 <table style="border: 0; cellspacing: 0; cellpadding: 0;" class="funcprototype-table"> 23 <tr> 24 <td> 25 <code class="funcdef">void (* <strong class="fsfunc">eglGetProcAddress</strong>(</code> 26 </td> 27 <td>char const * <var class="pdparam">procname</var>))(void<code>)</code>;</td> 28 </tr> 29 </table> 30 <div class="funcprototype-spacer"> </div> 31 </div> 32 </div> 33 <div class="refsect1" id="parameters"> 34 <h2>Parameters</h2> 35 <div class="variablelist"> 36 <dl class="variablelist"> 37 <dt> 38 <span class="term"> 39 <em class="parameter"> 40 <code>procname</code> 41 </em> 42 </span> 43 </dt> 44 <dd> 45 <p> 46 Specifies the name of the function to return. 47 </p> 48 </dd> 49 </dl> 50 </div> 51 </div> 52 <div class="refsect1" id="description"> 53 <h2>Description</h2> 54 <p> 55 <code class="function">eglGetProcAddress</code> returns the address of 56 the client API or EGL function named by 57 <em class="parameter"><code>procname</code></em>. <em class="parameter"><code>procname</code></em> 58 must be a null-terminated string. The pointer returned should be 59 cast to a function pointer matching the function's definition in 60 the corresponding API or extension specification. A return value 61 of <code class="constant">NULL</code> indicates that the specific 62 function does not exist for the implementation. 63 </p> 64 <p> 65 A non-<code class="constant">NULL</code> return value does not guarantee 66 that an extension function is actually supported at runtime. The 67 client must also make a corresponding query, such as 68 <code class="function">glGetString</code>(<code class="constant">GL_EXTENSIONS</code>) 69 for OpenGL and OpenGL ES extensions; 70 <code class="function">vgGetString</code>(<code class="constant">VG_EXTENSIONS</code>) 71 for OpenVG extensions; 72 <code class="function">eglQueryString</code>(<em class="parameter"><code>display</code></em>, 73 <code class="constant">EGL_EXTENSIONS</code>); or query the EGL or client 74 API version for non-extension functions, to determine if a 75 function is supported by EGL or a specific client API context. 76 </p> 77 <p> 78 Client API function pointers returned by 79 <code class="function">eglGetProcAddress</code> are independent of the 80 display and the currently bound client API context, and may be 81 used by any client API context which supports the function. 82 </p> 83 <p> 84 <code class="function">eglGetProcAddress</code> may be queried for all 85 EGL and client API functions supported by the implementation 86 (whether those functions are extensions or not, and whether they 87 are supported by the current client API context or not). 88 </p> 89 <p> 90 For functions that are queryable with 91 <code class="function">eglGetProcAddress</code>, implementations may 92 choose to also export those functions statically from the object 93 libraries implementing those functions. However, portable 94 clients cannot rely on this behavior. 95 </p> 96 </div> 97 <div class="refsect1" id="notes"> 98 <h2>Notes</h2> 99 <p> 100 If the EGL version is not 1.5 or greater, only queries of EGL 101 and client API <span class="emphasis"><em>extension</em></span> functions will 102 succeed. 103 </p> 104 </div> 105 <div class="refsect1" id="seealso"> 106 <h2>See Also</h2> 107 <p> 108 <code class="function">glGetString</code> 109 <a class="citerefentry" href="eglQueryString.xhtml"><span class="citerefentry"><span class="refentrytitle">eglQueryString</span></span></a> </p> 110 <code class="function">vgGetString</code> 111 </div> 112 <p> 113 </p> 114 <div class="refsect3" id="copyright"> 115 <img src="KhronosLogo.jpg"/> 116 <p> 117 Copyright © 2003-2014 The Khronos Group Inc. 118 Permission is hereby granted, free of charge, to any person obtaining a 119 copy of this software and/or associated documentation files (the 120 "Materials"), to deal in the Materials without restriction, including 121 without limitation the rights to use, copy, modify, merge, publish, 122 distribute, sublicense, and/or sell copies of the Materials, and to 123 permit persons to whom the Materials are furnished to do so, subject to 124 the condition that this copyright notice and permission notice shall be included 125 in all copies or substantial portions of the Materials. 126 </p> 127 </div> 128 <p> 129</p> 130 </div> 131 <footer/> 132 </body> 133</html> 134