class_docstr: Class to support multiple render passes for a renderer.
  
  Notes
  -----
  Passes are organized here as "primary" (vtkOpenGLRenderPass) that act
  within the renderer and "post-processing" (vtkImageProcessingPass) passes,
  which act on the image generated from the renderer.
  
  The primary passes are added as part of a vtk.vtkRenderPassCollection or
  are "stacked", while the post-processing passes are added as a final pass
  to the rendered image.
  
  Parameters
  ----------
  renderer : vtk.vtkRenderer
      Renderer to initialize render passes for.
docstr: Enable shadow pass.
  
  Returns
  -------
  vtk.vtkShadowMapPass
      The enabled shadow pass.
docstr_tok: ["Enable","shadow","pass",".","Returns","--","--","--","-","vtk.vtkShadowMapPass","The","enabled","shadow","pass","."]
code: def enable_shadow_pass(self):
      """Enable shadow pass.
  
      Returns
      -------
      vtk.vtkShadowMapPass
          The enabled shadow pass.
  
      """
      # shadow pass can be directly added to the base pass collection
      if self._shadow_map_pass is not None:
          return
      self._shadow_map_pass = _vtk.vtkShadowMapPass()
      self._pass_collection.AddItem(
          self._shadow_map_pass.GetShadowMapBakerPass()
      )
      self._pass_collection.AddItem(self._shadow_map_pass)
      self._update_passes()
      return self._shadow_map_pass
  
imports: import weakref
  from .None import _vtk
label_desc: Use image node_id 12 for calling the RenderPasses obj's underlying member method code with example usage: obj.enable_shadow_pass() and returns: self