glgetseparablefilterext - Man Page






glGetSeparableFilterEXT(3G)    OpenGL Reference	   glGetSeparableFilterEXT(3G)



NAME
     glGetSeparableFilterEXT - get separable convolution filter	kernel images


C SPECIFICATION
     void glGetSeparableFilterEXT( GLenum target,
				   GLenum format,
				   GLenum type,
				   GLvoid *row,
				   GLvoid *column,
				   GLvoid *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
     glGetSeparableFilterEXT 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





									Page 1






glGetSeparableFilterEXT(3G)    OpenGL Reference	   glGetSeparableFilterEXT(3G)



		     alpha		  alpha
		     luminance		  red
		     intensity		  red

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

     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 glGetSeparableFilterEXT is executed
     between the execution of glBegin and the corresponding execution of
     glEnd.

     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
     glGetConvolutionParameterEXT


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, glDrawPixels and glCopyPixels report a
     GL_INVALID_OPERATION error	and do not transfer any	pixels.






									Page 2






glGetSeparableFilterEXT(3G)    OpenGL Reference	   glGetSeparableFilterEXT(3G)



     Loading a convolution filter with some combinations of pixel transfer
     modes may be unreliable on	InfiniteReality	systems.  Straightforward
     transfers are known to work, though.  The remaining problems will be
     fixed in the next release.

     On	InfiniteReality	systems, kernel	values are clamped to the range
     [0.0,1.0] when they are retrieved.	 This will be fixed in a future
     release.


SEE ALSO
     glGetConvolutionFilterEXT,	glConvolutionParameterEXT,
     glSeparableFilter2DEXT.










































									Page 3