_C_ License Applicability. Except to the extent portions of this file are
_C_ made subject to an alternative license as permitted in the SGI Free
_C_ Software License B, Version 1.1 (the "License"), the contents of this
_C_ file are subject only to the provisions of the License. You may not use
_C_ this file except in compliance with the License. You may obtain a copy
_C_ of the License at Silicon Graphics, Inc., attn: Legal Services, 1600
_C_ Amphitheatre Parkway, Mountain View, CA 94043-1351, or at:
_C_ 
_C_ http://oss.sgi.com/projects/FreeB
_C_ 
_C_ Note that, as provided in the License, the Software is distributed on an
_C_ "AS IS" basis, with ALL EXPRESS AND IMPLIED WARRANTIES AND CONDITIONS
_C_ DISCLAIMED, INCLUDING, WITHOUT LIMITATION, ANY IMPLIED WARRANTIES AND
_C_ CONDITIONS OF MERCHANTABILITY, SATISFACTORY QUALITY, FITNESS FOR A
_C_ PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
_C_ 
_C_ Original Code. The Original Code is: OpenGL Sample Implementation,
_C_ Version 1.2.1, released January 26, 2000, developed by Silicon Graphics,
_C_ Inc. The Original Code is Copyright (c) 1991-2000 Silicon Graphics, Inc.
_C_ Copyright in any portions created by third parties is as indicated
_C_ elsewhere herein. All Rights Reserved.
_C_ 
_C_ Additional Notice Provisions: The application programming interfaces
_C_ established by SGI in conjunction with the Original Code are The
_C_ OpenGL(R) Graphics System: A Specification (Version 1.2.1), released
_C_ April 1, 1999; The OpenGL(R) Graphics System Utility Library (Version
_C_ 1.3), released November 4, 1998; and OpenGL(R) Graphics with the X
_C_ Window System(R) (Version 1.3), released October 19, 1998. This software
_C_ was created using the OpenGL(R) version 1.2.1 Sample Implementation
_C_ published by SGI, but has not been independently verified as being
_C_ compliant with the OpenGL(R) version 1.2.1 Specification.
_C_
_C_ $Date$ $Revision$
_C_ The first character in this file must be an '_'!
_C_ Anything on a line after _C_ is ignored
_define(_filters,eqn)_C_
_C_      eqn is automatically replaced with neqn for nroff
_header(AreTexturesResident,determine if textures are loaded in texture memory)
_names(AreTexturesResident)
.SH PARAMETERS
_define(@<__n>@,@<_param1>@)_C_
_define(@<__textures>@,@<_param2>@)_C_
_define(@<__residences>@,@<_param3>@)_C_
_phead(__n)
Specifies the number of textures to be queried.
_phead(__textures)
Specifies an array containing the names of the textures to be queried.
_phead(__residences)
Specifies an array in which the texture residence status is returned.
The residence status of a texture named by an element of __textures is
returned in the corresponding element of __residences.
.SH DESCRIPTION
GL establishes
a ``working set'' of textures that are resident in texture memory.
These textures can be bound to a texture target much more efficiently
than textures that are not resident.
.P
_cmnd queries the texture residence status of the __n textures named by
the elements of __textures.
If all the named textures are resident,
_cmnd returns _const(TRUE),
and the contents of __residences are undisturbed.
If not all the named textures are resident, _cmnd returns _const(FALSE),
and detailed status is returned in the __n elements of __residences.
If an element of __residences is _const(TRUE), then the texture named by
the corresponding element of __textures is resident.
.P
The residence status of a single bound texture may also be queried
by calling 
_cmnd(GetTexParameter) with the \f2target\fP argument set to the
target to which the texture is bound, and the \f2pname\fP argument
set to _const(TEXTURE_RESIDENT).
This is the only way that the residence status of a default texture can be
queried.
.SH NOTES
_cmnd is available only if the GL version is 1.1 or greater.
.P
_cmnd returns the residency status of the textures at the time of
invocation. It does not guarantee that the textures will remain
resident at any other time. 
.P
If textures reside in virtual memory (there is no texture memory), they
are considered always resident. 
.P
Some implementations may not load a texture until the first use of
that texture.
.SH ERRORS
_const(INVALID_VALUE) is generated if __n is negative.
.P
_const(INVALID_VALUE) is generated if any element in __textures
is 0 or does not name a texture. In that case, the function returns
_const(FALSE) and the contents of _param3 is indeterminate. 
.P
_const(INVALID_OPERATION) is generated if _cmnd is executed
between the execution of _cmnd(Begin) and the corresponding
execution of _cmnd(End).
.SH ASSOCIATED GETS
_cmnd(GetTexParameter) with parameter name _const(TEXTURE_RESIDENT)
retrieves the residence status of a currently bound texture.
.SH SEE ALSO
_cmnd(BindTexture),
_cmnd(GetTexParameter),
_cmnd(PrioritizeTextures),
_cmnd(TexImage1D),
_cmnd(TexImage2D),
_cmnd(TexImage3D),
_cmnd(TexParameter)
