*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->IRIX man pages -> OpenGL/glenable (3)              
Title
Content
Arch
Section
 

Contents


glEnable(3G)		       OpenGL Reference			  glEnable(3G)


NAME    [Toc]    [Back]

     glEnable, glDisable - enable or disable server-side GL capabilities

C SPECIFICATION    [Toc]    [Back]

     void glEnable( GLenum cap )

PARAMETERS    [Toc]    [Back]

     cap  Specifies a symbolic constant	indicating a GL	capability.

C SPECIFICATION    [Toc]    [Back]

     void glDisable( GLenum cap	)

PARAMETERS    [Toc]    [Back]

     cap  Specifies a symbolic constant	indicating a GL	capability.

DESCRIPTION    [Toc]    [Back]

     glEnable and glDisable enable and disable various capabilities.  Use
     glIsEnabled or glGet to determine the current setting of any capability.
     The initial value for each	capability with	the exception of GL_DITHER is
     GL_FALSE. The initial value for GL_DITHER is GL_TRUE.

     Both glEnable and glDisable take a	single argument, cap, which can	assume
     one of the	following values:

     GL_ALPHA_TEST	      If enabled, do alpha testing. See	glAlphaFunc.

     GL_ASYNC_DRAW_PIXELS_SGIX    [Toc]    [Back]
			      If enabled, allow	subsequent glDrawPixels
			      commands to operate in asynchronous mode.	 See
			      glDrawPixels.

     GL_ASYNC_READ_PIXELS_SGIX    [Toc]    [Back]
			      If enabled, allow	subsequent glReadPixels
			      commands to operate in asynchronous mode.	 See
			      glReadPixels.

     GL_ASYNC_TEX_IMAGE_SGIX  If enabled, allow	subsequent glTexImage commands
			      to operate in asynchronous mode.	See
			      glTexImage1D, glTexImage2D, glTexImage3D,
			      glTexSubImage1D, glTexSubImage2D,	and
			      glTexSubImage3D.

     GL_AUTO_NORMAL	      If enabled, generate normal vectors when either
			      GL_MAP2_VERTEX_3 or GL_MAP2_VERTEX_4 is used to
			      generate vertices. See glMap2.

     GL_BLEND		      If enabled, blend	the incoming RGBA color	values
			      with the values in the color buffers. See
			      glBlendFunc.



									Page 1






glEnable(3G)		       OpenGL Reference			  glEnable(3G)



     GL_CALLIGRAPHIC_FRAGMENT_SGIX    [Toc]    [Back]
			      If enabled, send fragment	information to the
			      calligraphic interface as	fragments are written
			      to the color buffer(s).

     GL_CLIP_PLANEi	      If enabled, clip geometry	against	user-defined
			      clipping plane i.	 See glClipPlane.

     GL_COLOR_ARRAY_EXT	      If enabled, glArrayElementEXT and
			      glDrawArraysEXT will transfer colors from	the
			      array supplied to	glColorPointerEXT.  See
			      glColorPointerEXT.

     GL_COLOR_LOGIC_OP	      If enabled, apply	the currently selected logical
			      operation	to the incoming	RGBA color and color
			      buffer values. See glLogicOp.

     GL_COLOR_MATERIAL	      If enabled, have one or more material parameters
			      track the	current	color.	See glColorMaterial.

     GL_COLOR_TABLE	      If enabled, preform a color table	lookup on the
			      incoming RGBA color values.  See glColorTable.

     GL_CONVOLUTION_1D	      If enabled, perform a 1D convolution operation
			      on incoming RGBA color values.  See
			      glConvolutionFilter1D.

     GL_CONVOLUTION_2D	      If enabled, perform a 2D convolution operation
			      on incoming RGBA color values.  See
			      glConvolutionFilter2D.

     GL_CULL_FACE	      If enabled, cull polygons	based on their winding
			      in window	coordinates. See glCullFace.

     GL_DEPTH_TEST	      If enabled, do depth comparisons and update the
			      depth buffer. Note that even if the depth	buffer
			      exists and the depth mask	is non-zero, the depth
			      buffer is	not updated if the depth test is
			      disabled.	See glDepthFunc	and glDepthRange.

     GL_DITHER		      If enabled, dither color components or indices
			      before they are written to the color buffer.

     GL_EDGE_FLAG_ARRAY_EXT   If enabled, glArrayElementEXT and
			      glDrawArraysEXT will transfer edge flags from
			      the array	supplied to glEdgeFlagPointerEXT.  See
			      glEdgeFlagPointerEXT.

     GL_FOG		      If enabled, blend	a fog color into the
			      posttexturing color.  See	glFog.





									Page 2






glEnable(3G)		       OpenGL Reference			  glEnable(3G)



     GL_FOG_OFFSET_SGIX	      If enabled, apply	an offset to the Z value used
			      for computing fog.  See glFog.

     GL_FRAGMENT_COLOR_MATERIAL_SGIX    [Toc]    [Back]
			      If enabled, have one or more fragment material
			      parameters track the current color.  See
			      glFragmentColorMaterial.

     GL_FRAGMENT_LIGHTi_SGIX  If enabled, include fragment light i in the
			      evaluation of the	lighting equation. See
			      glFragmentLightModel and glFragmentLight.

     GL_FRAGMENT_LIGHTING_SGIX    [Toc]    [Back]
			      If enabled, use the current fragment lighting
			      parameters to compute the	fragment color or
			      index.  Otherwise, simply	interpolate the	vertex
			      colors or	indices	across the fragment.  See
			      glFragmentMaterial, glFragmentLightModel,	and
			      glFragmentLight.

     GL_HISTOGRAM	      If enabled, histogram incoming RGBA color
			      values.  See glHistogram.

     GL_INDEX_ARRAY_EXT	      If enabled, glArrayElementEXT and
			      glDrawArraysEXT will transfer color indices from
			      the array	supplied to glIndexPointerEXT.	See
			      glIndexPointerEXT.

     GL_INDEX_LOGIC_OP	      If enabled, apply	the currently selected logical
			      operation	to the incoming	index and color	buffer
			      indices. See glLogicOp.

     GL_INTERLACE_SGIX	      If enabled, modifies the behavior	of
			      glDrawPixels, glCopyPixels, glTexImage2D,
			      glTexSubImage2DEXT, glCopyTexImage2DEXT and
			      glCopyTexSubImage2DEXT, such that	the source
			      image is considered to be	a field	of an
			      "interlaced" frame.  That	is, the	effective
			      source image has height equal to twice the
			      original height, with rows $(0,2,4,...)$
			      corresponding to rows $(0,1,2,...)$ of original
			      source image, and	rows $(1,3,5,...)$ made	of
			      "transparent" pixels that	do not affect the
			      corresponding destination	pixels in the target
			      image.  Thus, two	successive operations can be
			      used to assemble a complete frame	by interlacing
			      two fields.  See the reference pages for the
			      above commands for more details.

     GL_INTERLACE_READ_INGR   If enabled, modifies the behavior	of
			      glReadPixels, glCopyPixels, glCopyTexImage2DEXT
			      and glCopyTexSubImage2DEXT.  The pixels that are



									Page 3






glEnable(3G)		       OpenGL Reference			  glEnable(3G)



			      read or copied represent one field of an
			      interlaced frame.	 The source image height in
			      the framebuffer is equivalent to twice the
			      specified	height.	 Source	rows $(0,2,4,...)$
			      correspond to rows $(0,1,2,...)$ in the
			      destination or intermediate copy image.  Rows
			      $(1,3,5,...)$ of the source image	are skipped.
			      Two successive operations	can be used to extract
			      a	pair of	interlace fields from an interlaced
			      image in the framebuffer.	 See the reference
			      pages for	the above commands for more details.

     GL_IR_INSTRUMENT1_SGIX   If enabled, allows the gathering of instrument
			      measurements that	can be used to identify
			      graphics pipeline	bottlenecks. See the reference
			      pages for	glFlushRasterSGIX,
			      glGetInstrumentsSGIX, glInstrumentsBufferSGIX,
			      glPollInstrumentsSGIX, glReadInstrumentsSGIX,
			      glStartInstrumentsSGIX, and
			      glStopInstrumentsSGIX for	more details.

     GL_LIGHTi		      If enabled, include light	i in the evaluation of
			      the lighting equation. See glLightModel and
			      glLight.

     GL_LIGHTING	      If enabled, use the current lighting parameters
			      to compute the vertex color or index.
			      Otherwise, simply	associate the current color or
			      index with each vertex. See glMaterial,
			      glLightModel, and	glLight.

     GL_LINE_SMOOTH	      If enabled, draw lines with correct filtering.
			      Otherwise, draw aliased lines.  See glLineWidth.

     GL_LINE_STIPPLE	      If enabled, use the current line stipple pattern
			      when drawing lines. See glLineStipple.

     GL_MAP1_COLOR_4	      If enabled, calls	to glEvalCoord1, glEvalMesh1,
			      and glEvalPoint1 generate	RGBA values.  See
			      glMap1.

     GL_MAP1_INDEX	      If enabled, calls	to glEvalCoord1, glEvalMesh1,
			      and glEvalPoint1 generate	color indices.	See
			      glMap1.

     GL_MAP1_NORMAL	      If enabled, calls	to glEvalCoord1, glEvalMesh1,
			      and glEvalPoint1 generate	normals.  See glMap1.

     GL_MAP1_TEXTURE_COORD_1  If enabled, calls	to glEvalCoord1, glEvalMesh1,
			      and glEvalPoint1 generate	s texture coordinates.
			      See glMap1.




									Page 4






glEnable(3G)		       OpenGL Reference			  glEnable(3G)



     GL_MAP1_TEXTURE_COORD_2  If enabled, calls	to glEvalCoord1, glEvalMesh1,
			      and glEvalPoint1 generate	s and t	texture
			      coordinates.  See	glMap1.

     GL_MAP1_TEXTURE_COORD_3  If enabled, calls	to glEvalCoord1, glEvalMesh1,
			      and glEvalPoint1 generate	s, t, and r texture
			      coordinates.  See	glMap1.

     GL_MAP1_TEXTURE_COORD_4  If enabled, calls	to glEvalCoord1, glEvalMesh1,
			      and glEvalPoint1 generate	s, t, r, and q texture
			      coordinates.  See	glMap1.

     GL_MAP1_VERTEX_3	      If enabled, calls	to glEvalCoord1, glEvalMesh1,
			      and glEvalPoint1 generate	x, y, and z vertex
			      coordinates.  See	glMap1.

     GL_MAP1_VERTEX_4	      If enabled, calls	to glEvalCoord1, glEvalMesh1,
			      and glEvalPoint1 generate	homogeneous x, y, z,
			      and w vertex coordinates.	 See glMap1.

     GL_MAP2_COLOR_4	      If enabled, calls	to glEvalCoord2, glEvalMesh2,
			      and glEvalPoint2 generate	RGBA values.  See
			      glMap2.

     GL_MAP2_INDEX	      If enabled, calls	to glEvalCoord2, glEvalMesh2,
			      and glEvalPoint2 generate	color indices.	See
			      glMap2.

     GL_MAP2_NORMAL	      If enabled, calls	to glEvalCoord2, glEvalMesh2,
			      and glEvalPoint2 generate	normals.  See glMap2.

     GL_MAP2_TEXTURE_COORD_1  If enabled, calls	to glEvalCoord2, glEvalMesh2,
			      and glEvalPoint2 generate	s texture coordinates.
			      See glMap2.

     GL_MAP2_TEXTURE_COORD_2  If enabled, calls	to glEvalCoord2, glEvalMesh2,
			      and glEvalPoint2 generate	s and t	texture
			      coordinates.  See	glMap2.

     GL_MAP2_TEXTURE_COORD_3  If enabled, calls	to glEvalCoord2, glEvalMesh2,
			      and glEvalPoint2 generate	s, t, and r texture
			      coordinates.  See	glMap2.

     GL_MAP2_TEXTURE_COORD_4  If enabled, calls	to glEvalCoord2, glEvalMesh2,
			      and glEvalPoint2 generate	s, t, r, and q texture
			      coordinates.  See	glMap2.

     GL_MAP2_VERTEX_3	      If enabled, calls	to glEvalCoord2, glEvalMesh2,
			      and glEvalPoint2 generate	x, y, and z vertex
			      coordinates.  See	glMap2.





									Page 5






glEnable(3G)		       OpenGL Reference			  glEnable(3G)



     GL_MAP2_VERTEX_4	      If enabled, calls	to glEvalCoord2, glEvalMesh2,
			      and glEvalPoint2 generate	homogeneous x, y, z,
			      and w vertex coordinates.	 See glMap2.

     GL_MINMAX		      If enabled, compute the minimum and maximum
			      values of	incoming RGBA color values.  See
			      glMinmax.

     GL_MULTISAMPLE_SGIS      If enabled, perform multisampling	of fragments
			      for single-pass antialiasing and other effects.
			      See glSampleMaskSGIS and glSamplePatternSGIS.

     GL_NORMAL_ARRAY_EXT      If enabled, glArrayElementEXT and
			      glDrawArraysEXT will transfer surface normals
			      from the array supplied to glNormalPointerEXT.
			      See glNormalPointerEXT.

     GL_NORMALIZE	      If enabled, normal vectors specified with
			      glNormal are scaled to unit length after
			      transformation. See glNormal.

     GL_PIXEL_TEX_GEN_SGIX    If enabled, pixels drawn with glDrawPixels and
			      glCopyPixels are individually texture-mapped at
			      texture coordinates derived from each pixel's
			      color components.	See glPixelTexGenSGIX.

     GL_PIXEL_TEXTURE_SGIS    If enabled, pixels drawn with glDrawPixels and
			      glCopyPixels are individually texture-mapped at
			      texture coordinates derived from color
			      components. See glPixelTexGenParameterSGIS.

     GL_POINT_SMOOTH	      If enabled, draw points with proper filtering.
			      Otherwise, draw aliased points.  See
			      glPointSize.

     GL_POLYGON_OFFSET_FILL   If enabled, and if the polygon is	rendered in
			      GL_FILL mode, an offset is added to depth	values
			      of a polygon's fragments before the depth
			      comparison is performed. See glPolygonOffset.

     GL_POLYGON_OFFSET_LINE   If enabled, and if the polygon is	rendered in
			      GL_LINE mode, an offset is added to depth	values
			      of a polygon's fragments before the depth
			      comparison is performed. See glPolygonOffset.

     GL_POLYGON_OFFSET_POINT  If enabled, an offset is added to	depth values
			      of a polygon's fragments before the depth
			      comparison is performed, if the polygon is
			      rendered in GL_POINT mode. See glPolygonOffset.






									Page 6






glEnable(3G)		       OpenGL Reference			  glEnable(3G)



     GL_POLYGON_SMOOTH	      If enabled, draw polygons	with proper filtering.
			      Otherwise, draw aliased polygons.	For correct
			      anti-aliased polygons, an	alpha buffer is	needed
			      and the polygons must be sorted front to back.

     GL_POLYGON_STIPPLE	      If enabled, use the current polygon stipple
			      pattern when rendering polygons. See
			      glPolygonStipple.

     GL_POST_COLOR_MATRIX_COLOR_TABLE    [Toc]    [Back]
			      If enabled, preform a color table	lookup on RGBA
			      color values after color matrix transformation.
			      See glColorTable.

     GL_POST_CONVOLUTION_COLOR_TABLE    [Toc]    [Back]
			      If enabled, preform a color table	lookup on RGBA
			      color values after convolution.  See
			      glColorTable.

     GL_REFERENCE_PLANE_SGIX  If enabled, depth	values for pixel fragments are
			      computed from a reference	plane rather than from
			      the primitive being drawn.  See
			      glReferencePlaneSGIX.

     GL_SAMPLE_ALPHA_TO_MASK_SGIS    [Toc]    [Back]
			      If enabled, convert fragment alpha values	to
			      multisample coverage modification	masks.	See
			      glSampleMaskSGIS.

     GL_SAMPLE_ALPHA_TO_ONE_SGIS    [Toc]    [Back]
			      If enabled, set fragment alpha to	the maximum
			      permissible value	after computing	multisample
			      coverage modification masks.  See
			      glSampleMaskSGIS.

     GL_SAMPLE_MASK_SGIS      If enabled, apply	a mask to modify fragment
			      coverage during multisampling.  See
			      glSampleMaskSGIS.

     GL_RESCALE_NORMAL	      If enabled, normal vectors specified with
			      glNormal are scaled to unit length after
			      transformation. See glNormal.

     GL_SEPARABLE_2D	      If enabled, perform a two-dimensional
			      convolution operation using a separable
			      convolution filter on incoming RGBA color
			      values.  See glSeparableFilter2D.

     GL_SCISSOR_TEST	      If enabled, discard fragments that are outside
			      the scissor rectangle. See glScissor.





									Page 7






glEnable(3G)		       OpenGL Reference			  glEnable(3G)



     GL_SEPARABLE_2D_EXT      If enabled, perform separable two-dimensional
			      convolution during pixel transfers.  See
			      glSeparableFilter2DEXT.

     GL_SPRITE_SGIX	      If enabled, rotate geometry to face the viewer.
			      See glSpriteParameterSGIX.

     GL_STENCIL_TEST	      If enabled, do stencil testing and update	the
			      stencil buffer. See glStencilFunc	and
			      glStencilOp.

     GL_TEXTURE_1D	      If enabled, one-dimensional texturing is
			      performed	(unless	two- or	three-dimensional
			      texturing	is also	enabled).  See glTexImage1D.

     GL_TEXTURE_2D	      If enabled, two-dimensional texturing is
			      performed	(unless	three-dimensional texturing is
			      also enabled). See glTexImage2D.

     GL_TEXTURE_3D	      If enabled, three-dimensional texturing is
			      performed. See glTexImage3D.

     GL_TEXTURE_COLOR_TABLE_SGI    [Toc]    [Back]
			      If enabled, the colors produced by texturing are
			      mapped by	a lookup table before being used to
			      generate pixel fragments.	 See glColorTableSGI.

     GL_TEXTURE_COORD_ARRAY_EXT    [Toc]    [Back]
			      If enabled, glArrayElementEXT and
			      glDrawArraysEXT will transfer texture
			      coordinates from the array supplied to
			      glTexCoordPointerEXT.  See glTexCoordPointerEXT.

     GL_TEXTURE_GEN_Q	      If enabled, the q	texture	coordinate is computed
			      using the	texture	generation function defined
			      with glTexGen.  Otherwise, the current q texture
			      coordinate is used.  See glTexGen.

     GL_TEXTURE_GEN_R	      If enabled, the r	texture	coordinate is computed
			      using the	texture	generation function defined
			      with glTexGen.  Otherwise, the current r texture
			      coordinate is used.  See glTexGen.

     GL_TEXTURE_GEN_S	      If enabled, the s	texture	coordinate is computed
			      using the	texture	generation function defined
			      with glTexGen.  Otherwise, the current s texture
			      coordinate is used. See glTexGen.

     GL_TEXTURE_GEN_T	      If enabled, the t	texture	coordinate is computed
			      using the	texture	generation function defined
			      with glTexGen.  Otherwise, the current t texture
			      coordinate is used.  See glTexGen.



									Page 8






glEnable(3G)		       OpenGL Reference			  glEnable(3G)



     GL_VERTEX_ARRAY_EXT      If enabled, glArrayElementEXT and
			      glDrawArraysEXT will transfer vertex coordinates
			      from the array supplied to glVertexPointerEXT.
			      See glVertexPointerEXT.

     GL_VERTEX_PRECLIP_SGIX   If enabled, vertex data will be preprocessed,
			      and if necessary the vertices will be
			      preclipped, in order to enhance the precision of
			      parameter	interpolation over the area of the
			      primitive.

NOTES    [Toc]    [Back]

     GL_POLYGON_OFFSET_FILL, GL_POLYGON_OFFSET_LINE, GL_POLYGON_OFFSET_POINT,
     GL_COLOR_LOGIC_OP,	and GL_INDEX_LOGIC_OP are available only if the	GL
     version is	1.1 or greater.

     GL_RESCALE_NORMAL,	and GL_TEXTURE_3D are available	only if	the GL version
     is	1.2 or greater.

     GL_COLOR_TABLE, GL_CONVOLUTION_1D,	GL_CONVOLUTION_2D, GL_HISTOGRAM,
     GL_MINMAX,	GL_POST_COLOR_MATRIX_COLOR_TABLE,
     GL_POST_CONVOLUTION_COLOR_TABLE, and GL_SEPARABLE_2D are available	only
     if	GL_ARB_imaging is returned from	glGet with an argument of
     GL_EXTENSIONS.

ERRORS    [Toc]    [Back]

     GL_INVALID_ENUM is	generated if cap is not	one of the values listed
     previously.

     GL_INVALID_OPERATION is generated if glEnable or glDisable	is executed
     between the execution of glBegin and the corresponding execution of
     glEnd.


MACHINE	DEPENDENCIES
     The SGIX_async and	SGIX_async_pixel extensions are	implemented only on
     Octane2 VPro systems.

     GL_COLOR_TABLE_SGI, GL_POST_COLOR_MATRIX_COLOR_TABLE_SGI and
     GL_POST_CONVOLUTION_COLOR_TABLE_SGI are part of the SGI_color_table
     extension which is	not supported on RealityEngine,	RealityEngine2,	and
     VTX systems.

     The SGIX_fragment_lighting	extension is supported only on Octane2 VPro
     systems.

     On	Octane2	VPro systems, glLightModel with	GL_SEPARATE_SPECULAR_COLOR is
     not compatible with fragment lighting.  If	fragment lighting is enabled,
     it	will override the separate specular color light	model.






									Page 9






glEnable(3G)		       OpenGL Reference			  glEnable(3G)



     The SGIX_interlace	extension is supported only on InfiniteReality
     systems, on RealityEngine,	RealityEngine2,	and VTX	systems, on Octane2
     VPro systems, and on O2 systems.

     The INGR_interlace_read extension is supported only on Octane2 VPro
     systems, and on O2	systems.

     GL_PIXEL_TEXTURE_SGIS is part of the SGIS_pixel_texture extension,	which
     is	supported only on Octane2 VPro systems.

     On	Octane2	VPro systems, use of the texture q coordinate to achieve
     projective	texture	effects	will be	processed on a per-vertex basis
     instead of	a per-pixel basis, unless the the texture matrix is set	up to
     be	projective.  (A	projective texture matrix is defined to	be one in
     which any of the 13th, 14th or 15th elements is non-zero.)	 In addition,
     if	either two-sided lighting or fragment lighting is in effect,
     projective	texture	effects	will always be processed on a per-vertex
     basis.

     On	RealityEngine, RealityEngine2, and VTX systems,	do not enable or
     disable GL_VERTEX_ARRAY, GL_VERTEX_ARRAY_EXT, GL_NORMAL_ARRAY,
     GL_NORMAL_ARRAY_EXT, GL_COLOR_ARRAY, GL_COLOR_ARRAY_EXT,
     GL_INDEX_ARRAY,GL_INDEX_ARRAY_EXT,	GL_TEXTURE_COORD_ARRAY,
     GL_TEXTURE_COORD_ARRAY_EXT, GL_EDGE_FLAG_ARRAY or GL_EDGE_FLAG_ARRAY_EXT
     between a call to glNewList and the corresponding call to glEndList.
     Instead, enable or	disable	before the call	to glNewList.

     The SGIX_vertex_preclip extension is supported only on Octane2 VPro
     systems.

SEE ALSO    [Toc]    [Back]

      
      
     glAlphaFunc, glBlendFunc, glClipPlane, glColorMaterial, glCullFace,
     glDepthFunc, glDepthRange,	glEnableClientState, glFog,
     glFragmentColorMaterial, glFragmentLight, glFragmentLightModel,
     glFragmentMaterial, glGet,	glIsEnabled, glLight, glLightModel,
     glLineWidth, glLineStipple, glLogicOp, glMap1, glMap2, glMaterial,
     glNormal, glPixelTexGenParameterSGIS, glPointSize,	glPolygonMode,
     glPolygonOffset, glPolygonStipple,	glReferencePlaneSGIX, glScissor,
     glStencilFunc, glStencilOp, glTexGen, glTexImage1D, glTexImage2D,
     glTexImage3D


								       PPPPaaaaggggeeee 11110000
[ Back ]
 Similar pages
Name OS Title
glcenable IRIX enable or disable GLC capabilities
glenableclientstate IRIX enable or disable client-side capability
glEnableClientState Tru64 enable or disable
glDisableClientState Tru64 enable or disable
enable HP-UX enable/disable LP printers
disable HP-UX enable/disable LP printers
enable IRIX enable/disable LP printers
keyok FreeBSD enable or disable a keycode
keyok OpenBSD enable or disable a keycode
mvGetTrackEnable IRIX Enable/Disable a track
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service