# lv_draw_sw_blend.h (/api/private/draw/sw/blend/lv_draw_sw_blend_h)



<RelatedHeaders name="lv_draw_sw_blend_private.h" isPrivate="false" />

<ApiSummary functions="1" structs="1" typedefs="1" />

Functions [#functions]

<ApiMember kind="function" name="lv_draw_sw_blend" file="private/draw/sw/blend/lv_draw_sw_blend.h" line="62" url="https://github.com/lvgl/lvgl/tree/e1a0ad863f29742359bc680d6a7d973448ec2285/src/draw/sw/blend/lv_draw_sw_blend.h#L62">
  lv_draw_sw_blend [#lv_draw_sw_blend]

  Call the blend function of the `layer`.

  ```c title=" " lineNumbers=1
  void lv_draw_sw_blend(lv_draw_task_t *t, const lv_draw_sw_blend_dsc_t *dsc)
  ```

  <span className="sr-only">
    Parameters
  </span>

  | Name  | Type                                                                               | Description                                |
  | ----- | ---------------------------------------------------------------------------------- | ------------------------------------------ |
  | `t`   | <ApiLink name="lv_draw_task_t" display="lv_draw_task_t *" />                       | pointer to a draw unit                     |
  | `dsc` | <ApiLink name="lv_draw_sw_blend_dsc_t" display="const lv_draw_sw_blend_dsc_t *" /> | pointer to an initialized blend descriptor |
</ApiMember>

Structs [#structs]

<ApiMember kind="struct" name="lv_draw_sw_custom_blend_handler_t">
  lv_draw_sw_custom_blend_handler_t [#lv_draw_sw_custom_blend_handler_t]

  | Member    | Type                                          | Description |
  | --------- | --------------------------------------------- | ----------- |
  | `dest_cf` | <ApiLink name="lv_color_format_t" />          |             |
  | `handler` | <ApiLink name="lv_draw_sw_blend_handler_t" /> |             |
</ApiMember>

<TypeUsedBy name="lv_draw_sw_custom_blend_handler_t" count="1">
  * `lv_draw_sw_register_blend_handler` — param `handler`
</TypeUsedBy>

Typedefs [#typedefs]

<ApiMember kind="typedef" name="lv_draw_sw_blend_handler_t" file="private/draw/sw/blend/lv_draw_sw_blend.h" line="50" url="https://github.com/lvgl/lvgl/tree/e1a0ad863f29742359bc680d6a7d973448ec2285/src/draw/sw/blend/lv_draw_sw_blend.h#L50">
  lv_draw_sw_blend_handler_t [#lv_draw_sw_blend_handler_t]

  ```c title=" " lineNumbers=1
  typedef void(* lv_draw_sw_blend_handler_t) (lv_draw_task_t *t, const lv_draw_sw_blend_dsc_t *dsc)
  ```

  Custom draw function for SW rendering.
</ApiMember>

Dependencies [#dependencies]

<FileIncludes includes="[&#x22;lvgl_public.h&#x22;, &#x22;lv_blend_neon.h&#x22;]" includedBy="[&#x22;lv_draw_sw_blend_private.h&#x22;, &#x22;lv_blend_riscv_v.h&#x22;, &#x22;lv_draw_sw.h&#x22;, &#x22;lvgl_private.h&#x22;]" transitiveIncludes="[&#x22;lv_draw_sw_blend_neon_to_rgb565.h&#x22;, &#x22;lv_draw_sw_blend_neon_to_rgb888.h&#x22;]" />
