1<?xml version="1.0" encoding="UTF-8"?> 2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "xhtml1-transitional.dtd"> 3<!-- saved from url=(0013)about:internet --> 4<?xml-stylesheet type="text/xsl" href="mathml.xsl"?><html xmlns="http://www.w3.org/1999/xhtml" xmlns:pref="http://www.w3.org/2002/Math/preference" xmlns:xlink="http://www.w3.org/1999/xlink" pref:renderer="mathplayer-dl"> 5 <head> 6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 7 <style xmlns="" type="text/css"> 8 /* This style sets a margin around the entire page */ 9 html, body { 10 margin: 10px; 11 } 12 13 p { 14 font: normal 16px verdana, sans-serif; 15 margin: 0; 16 padding-bottom:12px; 17 } 18 19 h1 { 20 font: bold 25px verdana, sans-serif; 21 margin-top: 0; 22 margin-bottom: 3px; 23 padding-top: 0; 24 padding-bottom: 0; 25 } 26 27 h2 { 28 font: bold 19px verdana, sans-serif; 29 margin-top: 28px; 30 margin-bottom: 3px; 31 padding-top: 0; 32 padding-bottom: 0; 33 } 34 35 h3 { 36 font: bold 19px verdana, sans-serif !important; 37 margin-top: 28px; 38 margin-bottom: 3px; 39 padding-top: 0; 40 padding-bottom: 0; 41 } 42 43 li { 44 font: normal 16px verdana, sans-serif; 45 margin-top: 0; 46 margin-bottom: 18px; 47 padding-top: 0; 48 padding-bottom: 0; 49 } 50 51 .pdparam { 52 font: italic 16px verdana, sans-serif; 53 } 54 55 .term { 56 font: italic 16px verdana, sans-serif; 57 font-weight: normal; 58 } 59 60 .type { 61 font: normal 16px verdana, sans-serif !important; 62 } 63 64 .parameter { 65 font-style: italic; 66 } 67 68 a:link, a:visited { 69 color: blue; 70 text-decoration: none; 71 font: normal 16px; 72 } 73 74 a:hover { 75 background-color: #FFFF99; 76 font: normal 16px; 77 } 78 79 div.funcsynopsis { 80 text-align: left; 81 background-color: #e6e6e6; 82 font: normal 16px verdana, sans-serif; 83 padding-top: 10px; 84 padding-bottom: 10px; 85 } 86 87 div.funcsynopsis table { 88 border-collapse: separate; 89 font: normal 16px verdana, sans-serif; 90 } 91 92 div.funcsynopsis td { 93 background-color: #e6e6e6; 94 border: 0 solid #000; 95 padding: 1px; 96 font: normal 16px verdana, sans-serif; 97 } 98 99 div.refsect1 { 100 font-family: verdana, sans-serif; 101 font-size: 16px; 102 } 103 104 code.constant { 105 font: normal 16px courier new, monospace !important; 106 } 107 108 span.errorname { 109 font: normal 16px verdana, sans-serif !important; 110 } 111 112 code.function { 113 font: bold 16px verdana, sans-serif !important; 114 } 115 116 b.fsfunc { 117 font: bold 16px verdana, sans-serif !important; 118 } 119 120 code.varname { 121 font: italic 16px verdana, sans-serif; 122 } 123 124 code.replaceable { 125 font: italic 16px courier new, monospace; 126 } 127 128 code.funcdef { 129 font: normal 16px verdana, sans-serif !important; 130 } 131 132 .citerefentry { 133 font: normal 16px verdana, sans-serif !important; 134 } 135 136 .parameter { 137 font-style: italic; 138 } 139 140 code.fsfunc { 141 font: normal 16px verdana, sans-serif !important; 142 } 143 144 /* PARAMETER: This style controls spacing between the terms in Parameter section */ 145 dt { 146 margin-top: 15px; 147 } 148 149 /* TABLES: These styles apply to all tables OTHER than the Synopsis and Example tables */ 150 div.refsect1 table { 151 width: 100%; 152 margin-top: 10px; 153 background-color: #FFF; 154 border-collapse: collapse; 155 border-color: #000; 156 border-width: 1px; 157 font: normal 16px verdana, sans-serif; 158 } 159 160 div.refsect1 th { 161 border-collapse: collapse; 162 border-color: #000; 163 border-width: 1px; 164 font: bold 16px verdana, sans-serif; 165 } 166 167 div.refsect1 td { 168 background-color: #FFF; 169 padding: 5px; 170 vertical-align: text-top; 171 border-collapse: collapse; 172 border-color: #000; 173 border-width: 1px; 174 font: normal 16px verdana, sans-serif; 175 } 176 177 div.refsect1 p{ 178 font: normal 16px verdana, sans-serif; 179 margin-top: 8px; 180 margin-bottom: 8px; 181 padding-top: 0; 182 padding-bottom: 0; 183 } 184 185 186 /* EXAMPLE: These styles apply only to the Example section */ 187 div.refsect2 { 188 font: normal 16px courier new, monospace !important; 189 } 190 191 div.refsect2 table { 192 margin-top: 0; 193 background-color: #e6e6e6; 194 width: 100%; 195 border: 0 solid #000; 196 padding: 2px; 197 font: normal 16px courier new, monospace !important; 198 } 199 200 div.refsect2 td { 201 background-color: #e6e6e6; 202 font: normal 16px courier new, monospace !important; 203 white-space:pre; 204 } 205 206 /* COPYRIGHT: This style formats the text of the copyright statement at the bottom of the page */ 207 div.refsect3 { 208 font: normal 11px verdana, sans-serif; 209 margin-top: 50px; 210 margin-bottom: 20px; 211 padding-top: 0; 212 padding-bottom: 0; 213 } 214 215</style> 216 <title>eglChooseConfig</title> 217 <meta name="generator" content="DocBook XSL Stylesheets V1.78.1" /> 218 </head> 219 <body> 220 <div class="refentry"> 221 <a id="eglChooseConfig"></a> 222 <div class="titlepage"></div> 223 <div xmlns="" class="refnamediv"> 224 <h1>eglChooseConfig</h1> 225 <p> 226 return a list of EGL frame buffer configurations that match specified attributes 227 </p> 228 </div> 229 <div class="refsynopsisdiv"> 230 <h2>C Specification</h2> 231 <div class="funcsynopsis"> 232 <table xmlns="" border="0" summary="Function synopsis" cellspacing="0" cellpadding="0"> 233 <tr valign="bottom"> 234 <td> 235 <code xmlns="http://www.w3.org/1999/xhtml" class="funcdef">EGLBoolean <strong class="fsfunc">eglChooseConfig</strong>(</code> 236 <td>EGLDisplay <var xmlns="http://www.w3.org/1999/xhtml" class="pdparam">display</var>, </td> 237 </td> 238 </tr> 239 <tr valign="top"> 240 <td> </td> 241 <td>EGLint const * <var xmlns="http://www.w3.org/1999/xhtml" class="pdparam">attrib_list</var>, </td> 242 </tr> 243 <tr valign="top"> 244 <td> </td> 245 <td>EGLConfig * <var xmlns="http://www.w3.org/1999/xhtml" class="pdparam">configs</var>, </td> 246 </tr> 247 <tr valign="top"> 248 <td> </td> 249 <td>EGLint <var xmlns="http://www.w3.org/1999/xhtml" class="pdparam">config_size</var>, </td> 250 </tr> 251 <tr valign="top"> 252 <td> </td> 253 <td>EGLint * <var xmlns="http://www.w3.org/1999/xhtml" class="pdparam">num_config</var><code>)</code></td> 254 </tr> 255 </table> 256 </div> 257 </div> 258 <div class="refsect1"> 259 <a id="parameters"></a> 260 <h2>Parameters</h2> 261 <div class="variablelist"> 262 <dl class="variablelist"> 263 <dt> 264 <span class="term"> 265 <em class="parameter"> 266 <code>display</code> 267 </em> 268 </span> 269 </dt> 270 <dd> 271 <p>Specifies the EGL display connection.</p> 272 </dd> 273 <dt> 274 <span class="term"> 275 <em class="parameter"> 276 <code>attrib_list</code> 277 </em> 278 </span> 279 </dt> 280 <dd> 281 <p>Specifies attributes required to match by configs.</p> 282 </dd> 283 <dt> 284 <span class="term"> 285 <em class="parameter"> 286 <code>configs</code> 287 </em> 288 </span> 289 </dt> 290 <dd> 291 <p>Returns an array of frame buffer configurations.</p> 292 </dd> 293 <dt> 294 <span class="term"> 295 <em class="parameter"> 296 <code>config_size</code> 297 </em> 298 </span> 299 </dt> 300 <dd> 301 <p>Specifies the size of the array of frame buffer configurations.</p> 302 </dd> 303 <dt> 304 <span class="term"> 305 <em class="parameter"> 306 <code>num_config</code> 307 </em> 308 </span> 309 </dt> 310 <dd> 311 <p>Returns the number of frame buffer configurations returned.</p> 312 </dd> 313 </dl> 314 </div> 315 </div> 316 <div class="refsect1"> 317 <a id="description"></a> 318 <h2>Description</h2> 319 <p> 320 <code class="function">eglChooseConfig</code> returns in 321 <em class="parameter"><code>configs</code></em> a list of all 322 <acronym class="acronym">EGL</acronym> frame buffer configurations that 323 match the attributes specified in 324 <em class="parameter"><code>attrib_list</code></em>. The returned 325 <span class="type">EGLConfig</span>s can be used in any 326 <acronym class="acronym">EGL</acronym> function that requires an 327 <acronym class="acronym">EGL</acronym> frame buffer configuration. 328 </p> 329 <p> 330 If <em class="parameter"><code>configs</code></em> is not 331 <code class="constant">NULL</code>, up to 332 <em class="parameter"><code>config_size</code></em> configs will be returned 333 in the array pointed to by <em class="parameter"><code>configs</code></em>. 334 The number of configs actually returned will be returned in 335 *<em class="parameter"><code>num_config</code></em>. 336 </p> 337 <p> 338 If <em class="parameter"><code>configs</code></em> is 339 <code class="constant">NULL</code>, no configs will be returned in 340 <em class="parameter"><code>configs</code></em>. Instead, the total number of 341 configs matching <em class="parameter"><code>attrib_list</code></em> will be 342 returned in *<em class="parameter"><code>num_config</code></em>. In this case 343 <em class="parameter"><code>config_size</code></em> is ignored. This form of 344 <code class="function">eglChooseConfig</code> is used to determine 345 the number of matching frame buffer configurations, followed 346 by allocating an array of <span class="type">EGLConfig</span> to pass 347 into another call to <code class="function">eglChooseConfig</code> 348 with all other parameters unchanged. 349 </p> 350 <p> 351 All attributes in <em class="parameter"><code>attrib_list</code></em>, 352 including boolean attributes, are immediately followed by 353 the corresponding desired value. The list is terminated with 354 <code class="constant">EGL_NONE</code>. If an attribute is not 355 specified in <em class="parameter"><code>attrib_list</code></em> then the 356 default value (see below) is used (and the attribute is said 357 to be specified implicitly). For example, if 358 <code class="constant">EGL_DEPTH_SIZE</code> is not specified then it 359 is assumed to be zero. For some attributes, the default is 360 <code class="constant">EGL_DONT_CARE</code> meaning that any value is 361 OK for this attribute, so the attribute will not be checked. 362 </p> 363 <p> 364 Attributes are matched in an attribute-specific manner. Some 365 of the attributes, such as <code class="constant">EGL_LEVEL</code>, 366 must match the specified value exactly. Others, such as, 367 <code class="constant">EGL_RED_SIZE</code> must meet or exceed the 368 specified minimum values. If more than one EGL frame buffer 369 configuration matching all attributes is found, then a list 370 of configurations, sorted according to the ``best'' match 371 criteria, is returned. The match criteria for each attribute 372 and the exact sorting order is defined below. 373 </p> 374 <p> 375 For the bitmask attributes 376 <code class="constant">EGL_CONFORMANT</code>, 377 <code class="constant">EGL_RENDERABLE_TYPE</code>, and 378 <code class="constant">EGL_SURFACE_TYPE</code>, only the nonzero bits 379 of the mask are considered when matching. Any bits that are 380 zero in the specified bitmask attribute value may be either 381 zero or one in the resulting config's attribute value. 382 </p> 383 <p> 384 Attributes which may appear in 385 <em class="parameter"><code>attrib_list</code></em>, and their descriptions 386 and allowed values, are: 387 </p> 388 <div class="variablelist"> 389 <dl class="variablelist"> 390 <dt> 391 <span class="term"> 392 <code class="constant">EGL_ALPHA_MASK_SIZE</code> 393 </span> 394 </dt> 395 <dd> 396 <p> 397 Must be followed by a nonnegative integer that 398 indicates the desired alpha mask buffer size, in 399 bits. The smallest alpha mask buffers of at least 400 the specified size are preferred. The default value 401 is zero. 402 </p> 403 <p> 404 The alpha mask buffer is used only by OpenGL and 405 OpenGL ES client APIs. 406 </p> 407 </dd> 408 <dt> 409 <span class="term"> 410 <code class="constant">EGL_ALPHA_SIZE</code> 411 </span> 412 </dt> 413 <dd> 414 <p> 415 Must be followed by a nonnegative integer that 416 indicates the desired size of the alpha component of 417 the color buffer, in bits. If this value is zero, 418 color buffers with the smallest alpha component size 419 are preferred. Otherwise, color buffers with the 420 largest alpha component of at least the specified 421 size are preferred. The default value is zero. 422 </p> 423 </dd> 424 <dt> 425 <span class="term"> 426 <code class="constant">EGL_BIND_TO_TEXTURE_RGB</code> 427 </span> 428 </dt> 429 <dd> 430 <p> 431 Must be followed by 432 <code class="constant">EGL_DONT_CARE</code>, 433 <code class="constant">EGL_TRUE</code>, or 434 <code class="constant">EGL_FALSE</code>. 435 If <code class="constant">EGL_TRUE</code> is specified, then 436 only frame buffer configurations that support 437 binding of color buffers to an OpenGL ES RGB texture 438 will be considered. Currently only frame buffer 439 configurations that support pbuffers allow this. The 440 default value is <code class="constant">EGL_DONT_CARE</code>. 441 </p> 442 </dd> 443 <dt> 444 <span class="term"> 445 <code class="constant">EGL_BIND_TO_TEXTURE_RGBA</code> 446 </span> 447 </dt> 448 <dd> 449 <p> 450 Must be followed by one of 451 <code class="constant">EGL_DONT_CARE</code>, 452 <code class="constant">EGL_TRUE</code>, or 453 <code class="constant">EGL_FALSE</code>. 454 If <code class="constant">EGL_TRUE</code> is specified, then 455 only frame buffer configurations that support 456 binding of color buffers to an OpenGL ES RGBA 457 texture will be considered. Currently only frame 458 buffer configurations that support pbuffers allow 459 this. The default value is 460 <code class="constant">EGL_DONT_CARE</code>. 461 </p> 462 </dd> 463 <dt> 464 <span class="term"> 465 <code class="constant">EGL_BLUE_SIZE</code> 466 </span> 467 </dt> 468 <dd> 469 <p> 470 Must be followed by a nonnegative integer that 471 indicates the desired size of the blue component of 472 the color buffer, in bits. If this value is zero, 473 color buffers with the smallest blue component size 474 are preferred. Otherwise, color buffers with the 475 largest blue component of at least the specified 476 size are preferred. The default value is zero. 477 </p> 478 </dd> 479 <dt> 480 <span class="term"> 481 <code class="constant">EGL_BUFFER_SIZE</code> 482 </span> 483 </dt> 484 <dd> 485 <p> 486 Must be followed by a nonnegative integer that 487 indicates the desired color buffer size, in bits. 488 The smallest color buffers of at least the specified 489 size are preferred. The default value is zero. 490 </p> 491 <p> 492 The color buffer size is the sum of 493 <code class="constant">EGL_RED_SIZE</code>, 494 <code class="constant">EGL_GREEN_SIZE</code>, 495 <code class="constant">EGL_BLUE_SIZE</code>, and 496 <code class="constant">EGL_ALPHA_SIZE</code>, and does not 497 include any padding bits which may be present in the 498 pixel format. It is usually preferable to specify 499 desired sizes for these color components 500 individually. 501 </p> 502 </dd> 503 <dt> 504 <span class="term"> 505 <code class="constant">EGL_COLOR_BUFFER_TYPE</code> 506 </span> 507 </dt> 508 <dd> 509 <p> 510 Must be followed by one of 511 <code class="constant">EGL_RGB_BUFFER</code> or 512 <code class="constant">EGL_LUMINANCE_BUFFER</code>. 513 </p> 514 <p> 515 <code class="constant">EGL_RGB_BUFFER</code> indicates 516 an RGB color buffer; in this case, 517 attributes <code class="constant">EGL_RED_SIZE</code>, 518 <code class="constant">EGL_GREEN_SIZE</code> and 519 <code class="constant">EGL_BLUE_SIZE</code> must be non-zero, and 520 <code class="constant">EGL_LUMINANCE_SIZE</code> must be zero. 521 </p> 522 <p> 523 <code class="constant">EGL_LUMINANCE_BUFFER</code> indicates a luminance color 524 buffer. In this case <code class="constant">EGL_RED_SIZE</code>, 525 <code class="constant">EGL_GREEN_SIZE</code>, 526 <code class="constant">EGL_BLUE_SIZE</code> must be zero, and 527 <code class="constant">EGL_LUMINANCE_SIZE</code> must be non-zero. 528 </p> 529 <p> 530 For both RGB and luminance color buffers, 531 <code class="constant">EGL_ALPHA_SIZE</code> may be zero or 532 non-zero. 533 </p> 534 </dd> 535 <dt> 536 <span class="term"> 537 <code class="constant">EGL_CONFIG_CAVEAT</code> 538 </span> 539 </dt> 540 <dd> 541 <p> 542 Must be followed by 543 <code class="constant">EGL_DONT_CARE</code>, 544 <code class="constant">EGL_NONE</code>, 545 <code class="constant">EGL_SLOW_CONFIG</code>, or 546 <code class="constant">EGL_NON_CONFORMANT_CONFIG</code>. 547 </p> 548 <p> 549 If <code class="constant">EGL_DONT_CARE</code> is specified, 550 then configs are not matched for this attribute. The 551 default value is <code class="constant">EGL_DONT_CARE</code>. 552 </p> 553 <p> 554 If <code class="constant">EGL_NONE</code> is specified, then 555 configs are matched for this attribute, but only 556 configs with no caveats (neither 557 <code class="constant">EGL_SLOW_CONFIG</code> or 558 <code class="constant">EGL_NON_CONFORMANT_CONFIG</code>) will 559 be considered. 560 </p> 561 <p> 562 If <code class="constant">EGL_SLOW_CONFIG</code> is 563 specified, then only slow configs configurations 564 will be considered. The meaning of``slow'' is 565 implementation-dependent, but typically indicates a 566 non-hardware-accelerated (software) implementation. 567 </p> 568 <p> 569 If <code class="constant">EGL_NON_CONFORMANT_CONFIG</code> is 570 specified, then only configs supporting 571 non-conformant OpenGL ES contexts will be 572 considered. 573 </p> 574 <p> 575 If the EGL version is 1.3 or later, caveat 576 <code class="constant">EGL_NON_CONFORMANT_CONFIG</code> is 577 obsolete, since the same information can be 578 specified via the 579 <code class="constant">EGL_CONFORMANT</code> attribute on a 580 per-client-API basis, not just for OpenGL ES. 581 </p> 582 </dd> 583 <dt> 584 <span class="term"> 585 <code class="constant">EGL_CONFIG_ID</code> 586 </span> 587 </dt> 588 <dd> 589 <p> 590 Must be followed by a valid integer ID that 591 indicates the desired EGL frame buffer 592 configuration. When a 593 <code class="constant">EGL_CONFIG_ID</code> is specified, all 594 other attributes are ignored. The default value is 595 <code class="constant">EGL_DONT_CARE</code>. 596 </p> 597 <p> 598 The meaning of config IDs is 599 implementation-dependent. They are used only to 600 uniquely identify different frame buffer 601 configurations. 602 </p> 603 </dd> 604 <dt> 605 <span class="term"> 606 <code class="constant">EGL_CONFORMANT</code> 607 </span> 608 </dt> 609 <dd> 610 <p> 611 Must be followed by a bitmask indicating which types 612 of client API contexts created with respect to the 613 frame buffer configuration config must pass the 614 required conformance tests for that API. Mask bits 615 include: 616 </p> 617 <div class="variablelist"> 618 <dl class="variablelist"> 619 <dt> 620 <span class="term"> 621 <code class="constant">EGL_OPENGL_BIT</code> 622 </span> 623 </dt> 624 <dd> 625 <p> 626 Config supports creating OpenGL contexts. 627 </p> 628 </dd> 629 <dt> 630 <span class="term"> 631 <code class="constant">EGL_OPENGL_ES_BIT</code> 632 </span> 633 </dt> 634 <dd> 635 <p> 636 Config supports creating OpenGL ES 1.0 637 and/or 1.1 contexts. 638 </p> 639 </dd> 640 <dt> 641 <span class="term"> 642 <code class="constant">EGL_OPENGL_ES2_BIT</code> 643 </span> 644 </dt> 645 <dd> 646 <p> 647 Config supports creating OpenGL ES 2.0 contexts. 648 </p> 649 </dd> 650 <dt> 651 <span class="term"> 652 <code class="constant">EGL_OPENVG_BIT</code> 653 </span> 654 </dt> 655 <dd> 656 <p> 657 Config supports creating OpenVG contexts. 658 </p> 659 </dd> 660 </dl> 661 </div> 662 <p> 663 For example, if the bitmask is set to 664 <code class="constant">EGL_OPENGL_ES_BIT</code>, only frame 665 buffer configurations that support creating 666 conformant OpenGL ES contexts will match. The 667 default value is zero. 668 </p> 669 <p> 670 Most EGLConfigs should be conformant for all 671 supported client APIs, and it is rarely desirable to 672 select a nonconformant config. Conformance 673 requirements limit the number of non-conformant 674 configs that an implementation can define. 675 </p> 676 </dd> 677 <dt> 678 <span class="term"> 679 <code class="constant">EGL_DEPTH_SIZE</code> 680 </span> 681 </dt> 682 <dd> 683 <p> 684 Must be followed by a nonnegative integer that 685 indicates the desired depth buffer size, in bits. 686 The smallest depth buffers of at least the specified 687 size is preferred. If the desired size is zero, 688 frame buffer configurations with no depth buffer are 689 preferred. The default value is zero. 690 </p> 691 <p> 692 The depth buffer is used only by OpenGL and OpenGL 693 ES client APIs. 694 </p> 695 </dd> 696 <dt> 697 <span class="term"> 698 <code class="constant">EGL_GREEN_SIZE</code> 699 </span> 700 </dt> 701 <dd> 702 <p> 703 Must be followed by a nonnegative integer that 704 indicates the desired size of the green component of 705 the color buffer, in bits. If this value is zero, 706 color buffers with the smallest green component size 707 are preferred. Otherwise, color buffers with the 708 largest green component of at least the specified 709 size are preferred. The default value is zero. 710 </p> 711 </dd> 712 <dt> 713 <span class="term"> 714 <code class="constant">EGL_LEVEL</code> 715 </span> 716 </dt> 717 <dd> 718 <p> 719 Must be followed by an integer buffer level 720 specification. This specification is honored 721 exactly. Buffer level zero corresponds to the 722 default frame buffer of the display. Buffer level 723 one is the first overlay frame buffer, level two the 724 second overlay frame buffer, and so on. Negative 725 buffer levels correspond to underlay frame buffers. 726 The default value is zero. 727 </p> 728 <p> 729 Most imlementations do not support overlay or 730 underlay planes (buffer levels other than zero). 731 </p> 732 </dd> 733 <dt> 734 <span class="term"> 735 <code class="constant">EGL_LUMINANCE_SIZE</code> 736 </span> 737 </dt> 738 <dd> 739 <p> 740 Must be followed by a nonnegative integer that 741 indicates the desired size of the luminance 742 component of the color buffer, in bits. If this 743 value is zero, color buffers with the smallest 744 luminance component size are preferred. Otherwise, 745 color buffers with the largest luminance component 746 of at least the specified size are preferred. The 747 default value is zero. 748 </p> 749 </dd> 750 <dt> 751 <span class="term"> 752 <code class="constant">EGL_MATCH_NATIVE_PIXMAP</code> 753 </span> 754 </dt> 755 <dd> 756 <p> 757 Must be followed by the handle of a valid native 758 pixmap, cast to <span class="type">EGLint</span>, or 759 <code class="constant">EGL_NONE</code>. If the value is not 760 <code class="constant">EGL_NONE</code>, only configs which 761 support creating pixmap surfaces with this pixmap 762 using 763 <a class="citerefentry" href="eglCreatePixmapSurface.html"><span class="citerefentry"><span class="refentrytitle">eglCreatePixmapSurface</span></span></a> 764 will match this attribute. If the value is 765 <code class="constant">EGL_NONE</code>, then configs are not 766 matched for this attribute. The default value is 767 <code class="constant">EGL_NONE</code>. 768 </p> 769 <p> 770 <code class="constant">EGL_MATCH_NATIVE_PIXMAP</code> was 771 introduced due to the difficulty of determining an 772 <span class="type">EGLConfig</span> compatibile with a native 773 pixmap using only color component sizes. 774 </p> 775 </dd> 776 <dt> 777 <span class="term"> 778 <code class="constant">EGL_NATIVE_RENDERABLE</code> 779 </span> 780 </dt> 781 <dd> 782 <p> 783 Must be followed by 784 <code class="constant">EGL_DONT_CARE</code>, 785 <code class="constant">EGL_TRUE</code>, or 786 <code class="constant">EGL_FALSE</code>. 787 If <code class="constant">EGL_TRUE</code> is specified, then 788 only frame buffer configurations that allow native 789 rendering into the surface will be considered. The 790 default value is <code class="constant">EGL_DONT_CARE</code>. 791 </p> 792 </dd> 793 <dt> 794 <span class="term"> 795 <code class="constant">EGL_MAX_SWAP_INTERVAL</code> 796 </span> 797 </dt> 798 <dd> 799 <p> 800 Must be followed by a integer that indicates the 801 maximum value that can be passed to 802 <a class="citerefentry" href="eglSwapInterval.html"><span class="citerefentry"><span class="refentrytitle">eglSwapInterval</span></span></a>. 803 The default value is 804 <code class="constant">EGL_DONT_CARE</code>. 805 </p> 806 </dd> 807 <dt> 808 <span class="term"> 809 <code class="constant">EGL_MIN_SWAP_INTERVAL</code> 810 </span> 811 </dt> 812 <dd> 813 <p> 814 Must be followed by a integer that indicates the 815 minimum value that can be passed to eglSwapInterval. 816 The default value is <code class="constant">EGL_DONT_CARE</code>. 817 </p> 818 </dd> 819 <dt> 820 <span class="term"> 821 <code class="constant">EGL_RED_SIZE</code> 822 </span> 823 </dt> 824 <dd> 825 <p> 826 Must be followed by a nonnegative integer that 827 indicates the desired size of the red component of 828 the color buffer, in bits. If this value is zero, 829 color buffers with the smallest red component size 830 are preferred. Otherwise, color buffers with the 831 largest red component of at least the specified size 832 are preferred. The default value is zero. 833 </p> 834 </dd> 835 <dt> 836 <span class="term"> 837 <code class="constant">EGL_SAMPLE_BUFFERS</code> 838 </span> 839 </dt> 840 <dd> 841 <p> 842 Must be followed by the minimum acceptable number of 843 multisample buffers. Configurations with the 844 smallest number of multisample buffers that meet or 845 exceed this minimum number are preferred. Currently 846 operation with more than one multisample buffer is 847 undefined, so only values of zero or one will 848 produce a match. The default value is zero. 849 </p> 850 </dd> 851 <dt> 852 <span class="term"> 853 <code class="constant">EGL_SAMPLES</code> 854 </span> 855 </dt> 856 <dd> 857 <p> 858 Must be followed by the minimum number of 859 samples required in multisample buffers. 860 Configurations with the smallest number of 861 samples that meet or exceed the specified 862 minimum number are preferred. Note that it is 863 possible for color samples in the multisample 864 buffer to have fewer bits than colors in the 865 main color buffers. However, multisampled 866 colors maintain at least as much color 867 resolution in aggregate as the main color 868 buffers. 869 </p> 870 </dd> 871 <dt> 872 <span class="term"> 873 <code class="constant">EGL_STENCIL_SIZE</code> 874 </span> 875 </dt> 876 <dd> 877 <p> 878 Must be followed by a nonnegative integer that 879 indicates the desired stencil buffer size, in bits. 880 The smallest stencil buffers of at least the 881 specified size are preferred. If the desired size is 882 zero, frame buffer configurations with no stencil 883 buffer are preferred. The default value is zero. 884 </p> 885 <p> 886 The stencil buffer is used only by OpenGL and 887 OpenGL ES client APIs. 888 </p> 889 </dd> 890 <dt> 891 <span class="term"> 892 <code class="constant">EGL_RENDERABLE_TYPE</code> 893 </span> 894 </dt> 895 <dd> 896 <p> 897 Must be followed by a bitmask indicating which types 898 of client API contexts the frame buffer 899 configuration must support creating with 900 <a class="citerefentry" href="eglCreateContext.html"><span class="citerefentry"><span class="refentrytitle">eglCreateContext</span></span></a>). 901 Mask bits are the same as for attribute 902 <code class="constant">EGL_CONFORMANT</code>. The default 903 value is <code class="constant">EGL_OPENGL_ES_BIT</code>. 904 </p> 905 </dd> 906 <dt> 907 <span class="term"> 908 <code class="constant">EGL_SURFACE_TYPE</code> 909 </span> 910 </dt> 911 <dd> 912 <p> 913 Must be followed by a bitmask indicating which EGL 914 surface types and capabilities the frame buffer 915 configuration must support. Mask bits include: 916 </p> 917 <div class="variablelist"> 918 <dl class="variablelist"> 919 <dt> 920 <span class="term"> 921 <code class="constant">EGL_MULTISAMPLE_RESOLVE_BOX_BIT</code> 922 </span> 923 </dt> 924 <dd> 925 <p> 926 Config allows specifying box filtered 927 multisample resolve behavior with 928 <a class="citerefentry" href="eglSurfaceAttrib.html"><span class="citerefentry"><span class="refentrytitle">eglSurfaceAttrib</span></span></a>. 929 </p> 930 </dd> 931 <dt> 932 <span class="term"> 933 <code class="constant">EGL_PBUFFER_BIT</code> 934 </span> 935 </dt> 936 <dd> 937 <p> 938 Config supports creating pixel buffer surfaces. 939 </p> 940 </dd> 941 <dt> 942 <span class="term"> 943 <code class="constant">EGL_PIXMAP_BIT</code> 944 </span> 945 </dt> 946 <dd> 947 <p> 948 Config supports creating pixmap surfaces. 949 </p> 950 </dd> 951 <dt> 952 <span class="term"> 953 <code class="constant">EGL_SWAP_BEHAVIOR_PRESERVED_BIT</code> 954 </span> 955 </dt> 956 <dd> 957 <p> 958 Config allows setting swap behavior for 959 color buffers with 960 <a class="citerefentry" href="eglSurfaceAttrib.html"><span class="citerefentry"><span class="refentrytitle">eglSurfaceAttrib</span></span></a>. 961 </p> 962 </dd> 963 <dt> 964 <span class="term"> 965 <code class="constant">EGL_VG_ALPHA_FORMAT_PRE_BIT</code> 966 </span> 967 </dt> 968 <dd> 969 <p> 970 Config allows specifying OpenVG rendering 971 with premultiplied alpha values at surface 972 creation time (see 973 <a class="citerefentry" href="eglCreatePbufferSurface.html"><span class="citerefentry"><span class="refentrytitle">eglCreatePbufferSurface</span></span></a>, 974 <a class="citerefentry" href="eglCreatePixmapSurface.html"><span class="citerefentry"><span class="refentrytitle">eglCreatePixmapSurface</span></span></a>, 975 and 976 <a class="citerefentry" href="eglCreateWindowSurface.html"><span class="citerefentry"><span class="refentrytitle">eglCreateWindowSurface</span></span></a>). 977 </p> 978 </dd> 979 <dt> 980 <span class="term"> 981 <code class="constant">EGL_VG_COLORSPACE_LINEAR_BIT</code> 982 </span> 983 </dt> 984 <dd> 985 <p> 986 Config allows specifying OpenVG rendering in 987 a linear colorspace at surface creation time 988 (see 989 <a class="citerefentry" href="eglCreatePbufferSurface.html"><span class="citerefentry"><span class="refentrytitle">eglCreatePbufferSurface</span></span></a>, 990 <a class="citerefentry" href="eglCreatePixmapSurface.html"><span class="citerefentry"><span class="refentrytitle">eglCreatePixmapSurface</span></span></a>, 991 and 992 <a class="citerefentry" href="eglCreateWindowSurface.html"><span class="citerefentry"><span class="refentrytitle">eglCreateWindowSurface</span></span></a>). 993 </p> 994 </dd> 995 <dt> 996 <span class="term"> 997 <code class="constant">EGL_WINDOW_BIT</code> 998 </span> 999 </dt> 1000 <dd> 1001 <p> 1002 Config supports creating window surfaces. 1003 </p> 1004 </dd> 1005 </dl> 1006 </div> 1007 <p> 1008 For example, if the bitmask is set to 1009 <mml:math xmlns:mml="http://www.w3.org/1998/Math/MathML" overflow="scroll"> 1010 <mml:mi><code class="constant">EGL_WINDOW_BIT</code></mml:mi> 1011 <mml:mo>|</mml:mo> 1012 <mml:mi><code class="constant">EGL_PIXMAP_BIT</code></mml:mi> 1013 </mml:math>, 1014 only frame buffer configurations that support both 1015 windows and pixmaps will be considered. The default 1016 value is <code class="constant">EGL_WINDOW_BIT</code>. 1017 </p> 1018 </dd> 1019 <dt> 1020 <span class="term"> 1021 <code class="constant">EGL_TRANSPARENT_TYPE</code> 1022 </span> 1023 </dt> 1024 <dd> 1025 <p> 1026 Must be followed by one of 1027 <code class="constant">EGL_NONE</code> or 1028 <code class="constant">EGL_TRANSPARENT_RGB</code>. If 1029 <code class="constant">EGL_NONE</code> is specified, then 1030 only opaque frame buffer configurations will be 1031 considered. If 1032 <code class="constant">EGL_TRANSPARENT_RGB</code> is 1033 specified, then only transparent frame buffer 1034 configurations will be considered. The default value 1035 is <code class="constant">EGL_NONE</code>. 1036 </p> 1037 <p> 1038 Most implementations support only opaque frame 1039 buffer configurations. 1040 </p> 1041 </dd> 1042 <dt> 1043 <span class="term"> 1044 <code class="constant">EGL_TRANSPARENT_RED_VALUE</code> 1045 </span> 1046 </dt> 1047 <dd> 1048 <p> 1049 Must be followed by an integer value indicating the 1050 transparent red value. The value must be between 1051 zero and the maximum color buffer value for red. 1052 Only frame buffer configurations that use the 1053 specified transparent red value will be considered. 1054 The default value is 1055 <code class="constant">EGL_DONT_CARE</code>. 1056 </p> 1057 <p> 1058 This attribute is ignored unless 1059 <code class="constant">EGL_TRANSPARENT_TYPE</code> is included in 1060 <em class="parameter"><code>attrib_list</code></em> and specified as 1061 <code class="constant">EGL_TRANSPARENT_RGB</code>. 1062 </p> 1063 </dd> 1064 <dt> 1065 <span class="term"> 1066 <code class="constant">EGL_TRANSPARENT_GREEN_VALUE</code> 1067 </span> 1068 </dt> 1069 <dd> 1070 <p> 1071 Must be followed by an integer value indicating the 1072 transparent green value. The value must be between 1073 zero and the maximum color buffer value for green. 1074 Only frame buffer configurations that use the 1075 specified transparent green value will be 1076 considered. The default value is 1077 <code class="constant">EGL_DONT_CARE</code>. 1078 </p> 1079 <p> 1080 This attribute is ignored unless 1081 <code class="constant">EGL_TRANSPARENT_TYPE</code> is included in 1082 <em class="parameter"><code>attrib_list</code></em> and specified as 1083 <code class="constant">EGL_TRANSPARENT_RGB</code>. 1084 </p> 1085 </dd> 1086 <dt> 1087 <span class="term"> 1088 <code class="constant">EGL_TRANSPARENT_BLUE_VALUE</code> 1089 </span> 1090 </dt> 1091 <dd> 1092 <p> 1093 Must be followed by an integer value indicating the 1094 transparent blue value. The value must be between 1095 zero and the maximum color buffer value for blue. 1096 Only frame buffer configurations that use the 1097 specified transparent blue value will be considered. 1098 The default value is 1099 <code class="constant">EGL_DONT_CARE</code>. 1100 </p> 1101 <p> 1102 This attribute is ignored unless 1103 <code class="constant">EGL_TRANSPARENT_TYPE</code> is included in 1104 <em class="parameter"><code>attrib_list</code></em> and specified as 1105 <code class="constant">EGL_TRANSPARENT_RGB</code>. 1106 </p> 1107 </dd> 1108 </dl> 1109 </div> 1110 <p> 1111 When more than one EGL frame buffer configuration matches 1112 the specified attributes, a list of matching configurations 1113 is returned. The list is sorted according to the following 1114 precedence rules, which are applied in ascending order 1115 (i.e., configurations that are considered equal by a lower 1116 numbered rule are sorted by the higher numbered rule): 1117 </p> 1118 <div class="orderedlist"> 1119 <ol class="orderedlist" type="1"> 1120 <li class="listitem"> 1121 <p> 1122 Special: by <code class="constant">EGL_CONFIG_CAVEAT</code>, 1123 where the precedence is <code class="constant">EGL_NONE</code>, 1124 <code class="constant">EGL_SLOW_CONFIG</code>, and 1125 <code class="constant">EGL_NON_CONFORMANT_CONFIG</code>. 1126 </p> 1127 </li> 1128 <li class="listitem"> 1129 <p> 1130 Special: by <code class="constant">EGL_COLOR_BUFFER_TYPE</code>, 1131 where the precedence is 1132 <code class="constant">EGL_RGB_BUFFER</code>, 1133 <code class="constant">EGL_LUMINANCE_BUFFER</code>. 1134 </p> 1135 </li> 1136 <li class="listitem"> 1137 <p> 1138 Special: by larger total number of color bits (for an 1139 RGB color buffer, this is the sum of 1140 <code class="constant">EGL_RED_SIZE</code>, 1141 <code class="constant">EGL_GREEN_SIZE</code>, 1142 <code class="constant">EGL_BLUE_SIZE</code>, and 1143 <code class="constant">EGL_ALPHA_SIZE</code>; for a luminance 1144 color buffer, the sum of 1145 <code class="constant">EGL_LUMINANCE_SIZE</code> and 1146 <code class="constant">EGL_ALPHA_SIZE</code>). If the requested 1147 number of bits in <em class="parameter"><code>attrib_list</code></em> is 1148 <code class="constant">0</code> or 1149 <code class="constant">EGL_DONT_CARE</code> for a particular 1150 color component, then the number of bits for that 1151 component is not considered. 1152 </p> 1153 <p> 1154 This sort rule places configs with deeper color buffers 1155 before configs with shallower color buffers, which may 1156 be counterintuitive. 1157 </p> 1158 </li> 1159 <li class="listitem"> 1160 <p> 1161 Smaller <code class="constant">EGL_BUFFER_SIZE</code>. 1162 </p> 1163 </li> 1164 <li class="listitem"> 1165 <p> 1166 Smaller <code class="constant">EGL_SAMPLE_BUFFERS</code>. 1167 </p> 1168 </li> 1169 <li class="listitem"> 1170 <p> 1171 Smaller <code class="constant">EGL_SAMPLES</code>. 1172 </p> 1173 </li> 1174 <li class="listitem"> 1175 <p> 1176 Smaller <code class="constant">EGL_DEPTH_SIZE</code>. 1177 </p> 1178 </li> 1179 <li class="listitem"> 1180 <p> 1181 Smaller <code class="constant">EGL_STENCIL_SIZE</code>. 1182 </p> 1183 </li> 1184 <li class="listitem"> 1185 <p> 1186 Smaller <code class="constant">EGL_ALPHA_MASK_SIZE</code>. 1187 </p> 1188 </li> 1189 <li class="listitem"> 1190 <p> 1191 Special: <code class="constant">EGL_NATIVE_VISUAL_TYPE</code> 1192 (the actual sort order is implementation-defined, 1193 depending on the meaning of native visual types). 1194 </p> 1195 </li> 1196 <li class="listitem"> 1197 <p> 1198 Smaller <code class="constant">EGL_CONFIG_ID</code> (this is 1199 always the last sorting rule, and guarantees a unique 1200 ordering). 1201 </p> 1202 </li> 1203 </ol> 1204 </div> 1205 <p> 1206 <span class="type">EGLConfigs</span> are not sorted with respect to the 1207 attributes <code class="constant">EGL_BIND_TO_TEXTURE_RGB</code>, 1208 <code class="constant">EGL_BIND_TO_TEXTURE_RGBA</code>, 1209 <code class="constant">EGL_CONFORMANT</code>, 1210 <code class="constant">EGL_LEVEL</code>, 1211 <code class="constant">EGL_NATIVE_RENDERABLE</code>, 1212 <code class="constant">EGL_MAX_SWAP_INTERVAL</code>, 1213 <code class="constant">EGL_MIN_SWAP_INTERVAL</code>, 1214 <code class="constant">EGL_RENDERABLE_TYPE</code>, 1215 <code class="constant">EGL_SURFACE_TYPE</code>, 1216 <code class="constant">EGL_TRANSPARENT_TYPE</code>, 1217 <code class="constant">EGL_TRANSPARENT_RED_VALUE</code>, 1218 <code class="constant">EGL_TRANSPARENT_GREEN_VALUE</code>, and 1219 <code class="constant">EGL_TRANSPARENT_BLUE_VALUE</code>. 1220 </p> 1221 </div> 1222 <div class="refsect1"> 1223 <a id="examples"></a> 1224 <h2>Examples</h2> 1225 <p> 1226 The following example specifies a frame buffer configuration 1227 in the normal frame buffer (not an overlay or underlay). The 1228 returned frame buffer configuration supports a color buffer 1229 with at least 4 bits each of red, green and blue, and 1230 possibly no alpha bits. The code shown in the example may or 1231 may not have a depth buffer, or a stencil buffer. 1232 </p> 1233 <pre class="programlisting">EGLint const attrib_list[] = { 1234 EGL_RED_SIZE, 4, 1235 EGL_GREEN_SIZE, 4, 1236 EGL_BLUE_SIZE, 4, 1237 EGL_NONE 1238};</pre> 1239 </div> 1240 <div class="refsect1"> 1241 <a id="notes"></a> 1242 <h2>Notes</h2> 1243 <p> 1244 <code class="constant">EGL_RENDERABLE_TYPE</code> bit 1245 <code class="constant">EGL_OPENGL_BIT</code>, and 1246 <code class="constant">EGL_SURFACE_TYPE</code> bits 1247 <code class="constant">EGL_MULTISAMPLE_RESOLVE_BOX_BIT</code> and 1248 <code class="constant">EGL_SWAP_BEHAVIOR_PRESERVED_BIT</code> are 1249 supported only if the EGL version is 1.4 or greater. 1250 </p> 1251 <p> 1252 <code class="constant">EGL_CONFORMANT</code>, 1253 <code class="constant">EGL_MATCH_NATIVE_PIXMAP</code>, 1254 <code class="constant">EGL_RENDERABLE_TYPE</code> bit 1255 <code class="constant">EGL_OPENGL_ES2_BIT</code>, and 1256 <code class="constant">EGL_SURFACE_TYPE</code> bits 1257 <code class="constant">EGL_VG_ALPHA_FORMAT_PRE_BIT</code> and 1258 <code class="constant">EGL_VG_COLORSPACE_LINEAR_BIT</code> are 1259 supported only if the EGL version is 1.3 or greater. 1260 </p> 1261 <p> 1262 <code class="constant">EGL_ALPHA_MASK_SIZE</code>, 1263 <code class="constant">EGL_COLOR_BUFFER_TYPE</code>, 1264 <code class="constant">EGL_LUMINANCE_SIZE</code>, 1265 <code class="constant">EGL_RENDERABLE_TYPE</code>, and 1266 <code class="constant">EGL_RENDERABLE_TYPE</code> bits 1267 <code class="constant">EGL_OPENGL_ES_BIT</code> and 1268 <code class="constant">EGL_OPENVG_BIT</code> are supported only if 1269 the EGL version is 1.2 or greater. 1270 </p> 1271 <p> 1272 If OpenGL or OpenGL ES rendering is supported for a 1273 luminance color buffer, it is treated as RGB rendering with 1274 the value of <code class="constant">GL_RED_BITS</code> equal to 1275 <code class="constant">EGL_LUMINANCE_SIZE</code> and the values of 1276 <code class="constant">GL_GREEN_BITS</code> and 1277 <code class="constant">GL_BLUE_BITS</code> equal to zero. The red 1278 component of fragments is written to the luminance channel 1279 of the color buffer while the green and blue components are 1280 discarded. 1281 </p> 1282 <p> 1283 <a class="citerefentry" href="eglGetConfigs.html"><span class="citerefentry"><span class="refentrytitle">eglGetConfigs</span></span></a> 1284 and 1285 <a class="citerefentry" href="eglGetConfigAttrib.html"><span class="citerefentry"><span class="refentrytitle">eglGetConfigAttrib</span></span></a> 1286 can be used to implement selection algorithms other than the 1287 generic one implemented by 1288 <code class="function">eglChooseConfig</code>. Call 1289 <a class="citerefentry" href="eglGetConfigs.html"><span class="citerefentry"><span class="refentrytitle">eglGetConfigs</span></span></a> 1290 to retrieve all the frame buffer configurations, or 1291 alternatively, all the frame buffer configurations with a 1292 particular set of attributes. Next call 1293 <a class="citerefentry" href="eglGetConfigAttrib.html"><span class="citerefentry"><span class="refentrytitle">eglGetConfigAttrib</span></span></a> 1294 to retrieve additional attributes for the frame buffer 1295 configurations and then select between them. 1296 </p> 1297 <p> 1298 EGL implementors are strongly discouraged, but not 1299 proscribed, from changing the selection algorithm used by 1300 <code class="function">eglChooseConfig</code>. Therefore, selections 1301 may change from release to release of the client-side 1302 library. 1303 </p> 1304 </div> 1305 <div class="refsect1"> 1306 <a id="errors"></a> 1307 <h2>Errors</h2> 1308 <p> 1309 <code class="constant">EGL_FALSE</code> is returned on failure, 1310 <code class="constant">EGL_TRUE</code> otherwise. 1311 <em class="parameter"><code>configs</code></em> and 1312 <em class="parameter"><code>num_config</code></em> are not modified when 1313 <code class="constant">EGL_FALSE</code> is returned. 1314 </p> 1315 <p> 1316 <code class="constant">EGL_BAD_DISPLAY</code> is generated if 1317 <em class="parameter"><code>display</code></em> is not an EGL display connection. 1318 </p> 1319 <p> 1320 <code class="constant">EGL_BAD_ATTRIBUTE</code> is generated if 1321 <em class="parameter"><code>attribute_list</code></em> contains an invalid frame buffer 1322 configuration attribute or an 1323 attribute value that is unrecognized or out of range. 1324 </p> 1325 <p> 1326 <code class="constant">EGL_NOT_INITIALIZED</code> is generated if 1327 <em class="parameter"><code>display</code></em> has not been initialized. 1328 </p> 1329 <p> 1330 <code class="constant">EGL_BAD_PARAMETER</code> is generated if 1331 <em class="parameter"><code>num_config</code></em> is <code class="constant">NULL</code>. 1332 </p> 1333 </div> 1334 <div class="refsect1"> 1335 <a id="seealso"></a> 1336 <h2>See Also</h2> 1337 <p> 1338 <a class="citerefentry" href="eglCreateContext.html"><span class="citerefentry"><span class="refentrytitle">eglCreateContext</span></span></a>, 1339 <a class="citerefentry" href="eglCreatePbufferSurface.html"><span class="citerefentry"><span class="refentrytitle">eglCreatePbufferSurface</span></span></a>, 1340 <a class="citerefentry" href="eglCreatePixmapSurface.html"><span class="citerefentry"><span class="refentrytitle">eglCreatePixmapSurface</span></span></a>, 1341 <a class="citerefentry" href="eglCreateWindowSurface.html"><span class="citerefentry"><span class="refentrytitle">eglCreateWindowSurface</span></span></a>, 1342 <a class="citerefentry" href="eglGetConfigs.html"><span class="citerefentry"><span class="refentrytitle">eglGetConfigs</span></span></a>, 1343 <a class="citerefentry" href="eglGetConfigAttrib.html"><span class="citerefentry"><span class="refentrytitle">eglGetConfigAttrib</span></span></a>, 1344 <a class="citerefentry" href="eglSurfaceAttrib.html"><span class="citerefentry"><span class="refentrytitle">eglSurfaceAttrib</span></span></a>, 1345 <a class="citerefentry" href="eglSwapInterval.html"><span class="citerefentry"><span class="refentrytitle">eglSwapInterval</span></span></a> 1346 </p> 1347 </div> 1348 <div xmlns="" class="refsect3" lang="en" xml:lang="en"><a xmlns="http://www.w3.org/1999/xhtml" id="Copyright"></a><h4 xmlns="http://www.w3.org/1999/xhtml"></h4><img xmlns="http://www.w3.org/1999/xhtml" src="KhronosLogo.jpg" /><p xmlns="http://www.w3.org/1999/xhtml"></p> 1349Copyright © 2003-2014 The Khronos Group Inc. 1350Permission is hereby granted, free of charge, to any person obtaining a 1351copy of this software and/or associated documentation files (the 1352"Materials"), to deal in the Materials without restriction, including 1353without limitation the rights to use, copy, modify, merge, publish, 1354distribute, sublicense, and/or sell copies of the Materials, and to 1355permit persons to whom the Materials are furnished to do so, subject to 1356the condition that this copyright notice and permission notice shall be included 1357in all copies or substantial portions of the Materials. 1358</div> 1359 </div> 1360 </body> 1361</html> 1362