fglGetSeparableFilterEXT(3G)

fglGetSeparableFilterEXT - get separable convolution filter kernel images

As shipped in IRIX 6.5.22. Unchanged since IRIX 6.5.

NAME
     fglGetSeparableFilterEXT - get separable convolution filter kernel images


FORTRAN SPECIFICATION
     SUBROUTINE fglGetSeparableFilterEXT( INTEGER*4 target,
                                          INTEGER*4 format,
                                          INTEGER*4 type,
                                          CHARACTER*8 row,
                                          CHARACTER*8 column,
                                          CHARACTER*8 span )


PARAMETERS
     target  The separable filter to be retrieved.  Must be
             GL_SEPARABLE_2D_EXT.

     format  Format of the output images.  Must be one of GL_RED, GL_GREEN,
             GL_BLUE, GL_ALPHA, GL_RGB, GL_RGBA, GL_ABGR_EXT, GL_LUMINANCE, or
             GL_LUMINANCE_ALPHA.

     type    Data type of components in the output images.  Must be one of
             GL_UNSIGNED_BYTE, GL_BYTE, GL_UNSIGNED_SHORT, GL_SHORT,
             GL_UNSIGNED_INT, GL_INT, GL_FLOAT, GL_UNSIGNED_BYTE_3_3_2_EXT,
             GL_UNSIGNED_SHORT_4_4_4_4_EXT, GL_UNSIGNED_SHORT_5_5_5_1_EXT,
             GL_UNSIGNED_INT_8_8_8_8_EXT, or GL_UNSIGNED_INT_10_10_10_2_EXT.

     row     Pointer to storage for the row filter image.

     column  Pointer to storage for the column filter image.

     span    Pointer to storage for the span filter image.

DESCRIPTION
     fglGetSeparableFilterEXT returns the two one-dimensional filter kernel
     images for the current separable 2D convolution filter.  The row image is
     placed in row and the column image is placed in column according to the
     specifications in format and type.  (In the current implementation, span
     is not affected in any way.)  No pixel transfer operations are performed
     on the images, but the relevant pixel storage modes are applied.

     Color components that are present in format but not included in the
     internal format of the filters are returned as zero.  The assignments of
     internal color components to the components of format are as follows:

                     Internal Component   Resulting Component
                     ________________________________________
                     red                  red
                     green                green
                     blue                 blue
                     alpha                alpha
                     luminance            red
                     intensity            red

NOTES
     Non-separable 2D filters must be retrieved with
     fglGetConvolutionFilterEXT.

     The span argument is reserved for possible future use by separable 3D
     filters.

ERRORS
     GL_INVALID_ENUM is generated if target is not GL_SEPARABLE_2D_EXT.

     GL_INVALID_ENUM is generated if format is not one of the allowable
     values.

     GL_INVALID_ENUM is generated if type is not one of the allowable values.

     GL_INVALID_OPERATION is generated if fglGetSeparableFilterEXT is executed
     between the execution of fglBegin and the corresponding execution of
     fglEnd.

     If type is set to GL_UNSIGNED_BYTE_3_3_2_EXT,
     GL_UNSIGNED_SHORT_4_4_4_4_EXT, GL_UNSIGNED_SHORT_5_5_5_1_EXT,
     GL_UNSIGNED_INT_8_8_8_8_EXT, or GL_UNSIGNED_INT_10_10_10_2_EXT and the
     EXT_packed_pixels extension is not supported then a GL_INVALID_ENUM error
     is generated.

ASSOCIATED GETS
     fglGetConvolutionParameterEXT


MACHINE DEPENDENCIES
     On RealityEngine, RealityEngine2, and VTX systems convolution may not be
     used in the following circumstances:

          1.  When rendering to pixmaps.

          2.  When fragment processing (texturing, depth buffering, alpha
              testing, multisampling, fog) is enabled.

          3.  When histogramming or minmax is enabled.

          4.  When either of the pixel zoom factors has a value other than 1.0
              or -1.0.

     In these cases, fglDrawPixels and fglCopyPixels report a
     GL_INVALID_OPERATION error and do not transfer any pixels.

SEE ALSO
     fglGetConvolutionFilterEXT, fglConvolutionParameterEXT,
     fglSeparableFilter2DEXT.