ADC Home > Reference Library > Reference > Mac OS X > Mac OS X Man Pages

 

This document is a Mac OS X manual page. Manual pages are a command-line technology for providing documentation. You can view these manual pages locally using the man(1) command. These manual pages come from many different sources, and thus, have a variety of writing styles.

For more information about the manual page format, see the manual page for manpages(5).



GLCALLLISTS(3G)                                                                              GLCALLLISTS(3G)



NAME
       glCallLists - execute a list of display lists


C SPECIFICATION
       void glCallLists( GLsizei n,
                         GLenum type,
                         const GLvoid *lists )


PARAMETERS
       n      Specifies the number of display lists to be executed.

       type   Specifies  the  type  of  values  in  lists.   Symbolic  constants  GL_BYTE, GL_UNSIGNED_BYTE,
              GL_SHORT, GL_UNSIGNED_SHORT, GL_INT, GL_UNSIGNED_INT, GL_FLOAT,  GL_2_BYTES,  GL_3_BYTES,  and
              GL_4_BYTES are accepted.

       lists  Specifies  the  address  of an array of name offsets in the display list.  The pointer type is
              void because the offsets can be bytes, shorts, ints, or floats,  depending  on  the  value  of
              type.

DESCRIPTION
       glCallLists  causes  each  display  list  in  the list of names passed as lists to be executed.  As a
       result, the commands saved in each display list are executed in order, just as if  they  were  called
       without using a display list.  Names of display lists that have not been defined are ignored.

       glCallLists  provides an efficient means for executing more than one display list.  type allows lists
       with various name formats to be accepted.  The formats are as follows:

       GL_BYTE                  lists is treated as an array of signed bytes, each in the range -128 through
                                127.

       GL_UNSIGNED_BYTE         lists  is treated as an array of unsigned bytes, each in the range 0 through
                                255.

       GL_SHORT                 lists is treated as an array of signed two-byte integers, each in the  range
                                -32768 through 32767.

       GL_UNSIGNED_SHORT        lists  is  treated  as  an  array of unsigned two-byte integers, each in the
                                range 0 through 65535.

       GL_INT                   lists is treated as an array of signed four-byte integers.

       GL_UNSIGNED_INT          lists is treated as an array of unsigned four-byte integers.

       GL_FLOAT                 lists is treated as an array of four-byte floating-point values.

       GL_2_BYTES               lists is treated as an array of unsigned bytes.  Each pair of  bytes  speci-fies specifies
                                fies  a  single display-list name.  The value of the pair is computed as 256
                                times the unsigned value of the first byte plus the unsigned  value  of  the
                                second byte.

       GL_3_BYTES               lists is treated as an array of unsigned bytes.  Each triplet of bytes spec-ifies specifies
                                ifies a single display-list name.  The value of the triplet is  computed  as
                                65536  times  the  unsigned  value  of  the  first  byte, plus 256 times the
                                unsigned value of the second byte, plus the  unsigned  value  of  the  third
                                byte.

       GL_4_BYTES               lists  is  treated  as an array of unsigned bytes.  Each quadruplet of bytes
                                specifies a single display-list name.  The value of the quadruplet  is  com-puted computed
                                puted  as  16777216  times  the unsigned value of the first byte, plus 65536
                                times the unsigned value of the second byte, plus  256  times  the  unsigned
                                value of the third byte, plus the unsigned value of the fourth byte.

       The  list of display-list names is not null-terminated.  Rather, n specifies how many names are to be
       taken from lists.

       An additional level of indirection is made available with the glListBase command, which specifies  an
       unsigned  offset  that is added to each display-list name specified in lists before that display list
       is executed.

       glCallLists can appear inside a display list.  To avoid the possibility of infinite recursion result-ing resulting
       ing  from  display lists calling one another, a limit is placed on the nesting level of display lists
       during display-list execution.  This limit must be at least 64, and it depends on the implementation.

       GL state is not saved and restored across a call to glCallLists.  Thus, changes made to GL state dur-ing during
       ing the execution of the display lists  remain  after  execution  is  completed.   Use  glPushAttrib,
       glPopAttrib, glPushMatrix, and glPopMatrix to preserve GL state across glCallLists calls.

NOTES
       Display  lists can be executed between a call to glBegin and the corresponding call to glEnd, as long
       as the display list includes only commands that are allowed in this interval.

ERRORS
       GL_INVALID_VALUE is generated if n is negative.

       GL_INVALID_ENUM  is  generated  if  type  is  not  one  of   GL_BYTE,   GL_UNSIGNED_BYTE,   GL_SHORT,
       GL_UNSIGNED_SHORT, GL_INT, GL_UNSIGNED_INT, GL_FLOAT, GL_2_BYTES, GL_3_BYTES, GL_4_BYTES.

ASSOCIATED GETS
       glGet with argument GL_LIST_BASE
       glGet with argument GL_MAX_LIST_NESTING
       glIsList

SEE ALSO
       glCallList(3G), glDeleteLists(3G), glGenLists(3G), glListBase(3G), glNewList(3G), glPushAttrib(3G),
       glPushMatrix(3G)




                                                                                             GLCALLLISTS(3G)

Did this document help you?
Yes: Tell us what works for you.
It’s good, but: Report typos, inaccuracies, and so forth.
It wasn’t helpful: Tell us what would have helped.