Device manipulation functions

Functions
Device manipulation functions

Functions that deal with finding, opening, closing, and otherwise using the DRM device itself. More...

## Functions
EAPI Ecore_Drm_Device * | ecore_drm_device_find (const char *name, const char *seat)
| Find a drm device in the system. More...
EAPI void | ecore_drm_device_free (Ecore_Drm_Device *dev)
| Free an Ecore_Drm_Device. More...
EAPI Eina_Bool | ecore_drm_device_open (Ecore_Drm_Device *dev)
| Open an Ecore_Drm_Device. More...
EAPI Eina_Bool | ecore_drm_device_close (Ecore_Drm_Device *dev)
| Close an Ecore_Drm_Device. More...
EAPI Eina_Bool | ecore_drm_device_master_get (Ecore_Drm_Device *dev)
| Get if a given Ecore_Drm_Device is master. More...
EAPI Eina_Bool | ecore_drm_device_master_set (Ecore_Drm_Device *dev)
| Set a given Ecore_Drm_Device to master. More...
EAPI Eina_Bool | ecore_drm_device_master_drop (Ecore_Drm_Device *dev)
| Tell a given Ecore_Drm_Device to stop being master. More...
EAPI int | ecore_drm_device_fd_get (Ecore_Drm_Device *dev)
| Get the file descriptor of Ecore_Drm_Device. More...
EAPI void | ecore_drm_device_window_set (Ecore_Drm_Device *dev, unsigned int window)
| Set the window of Ecore_Drm_Device. More...
EAPI const char * | ecore_drm_device_name_get (Ecore_Drm_Device *dev)
| Get the name of the Ecore_Drm_Device. More...
EAPI Eina_Bool | ecore_drm_device_software_setup (Ecore_Drm_Device *dev)
| Setup an Ecore_Drm_Device for software rendering. More...
EAPI Eina_Bool | ecore_drm_device_pointer_left_handed_set (Ecore_Drm_Device *dev, Eina_Bool left_handed)
| Set a left handed mode at the given Ecore_Drm_Device. More...
EAPI void | ecore_drm_device_keyboard_cached_context_set (struct xkb_context *ctx)
| Setup a cached context to use same context for each devices. More...
EAPI void | ecore_drm_device_keyboard_cached_keymap_set (struct xkb_keymap *map)
| Setup a cached keymap to use same keymap for each devices. More...
EAPI Ecore_Drm_Output * | ecore_drm_device_output_find (Ecore_Drm_Device *dev, int x, int y)
| Find an Ecore_Drm_Output at the given coordinates. More...
EAPI void | ecore_drm_device_pointer_xy_get (Ecore_Drm_Device *dev, int *x, int *y)
| Get the pointer position of Ecore_Drm_Device. More...
EAPI const Eina_List * | ecore_drm_devices_get (void)
| Get the list of drm devices which are allocated. More...
EAPI void | ecore_drm_screen_size_range_get (Ecore_Drm_Device *dev, int *minw, int *minh, int *maxw, int *maxh)
| Get the minimum and maximum screen size range. More...
EAPI Ecore_Drm_Output * | ecore_drm_device_output_name_find (Ecore_Drm_Device *dev, const char *name)
| Find an Ecore_Drm_Output which has the given name. More...

## Detailed Description

Functions that deal with finding, opening, closing, and otherwise using the DRM device itself.

## Function Documentation

## ◆ ecore_drm_device_find()

EAPI Ecore_Drm_Device* ecore_drm_device_find | ( | const char * | name,
|  | const char * | seat
| ) |  |

Find a drm device in the system.

Parameters

  name | The name of the device to find. If NULL, this function will search for the default drm device.
  seat | The name of the seat where this device may be found. If NULL, this function will use a default seat name 'seat0'.

Returns
  An opaque Ecore_Drm_Device structure representing the card.

References DBG, eeze_udev_find_by_type(), eeze_udev_syspath_get_devpath(), eeze_udev_syspath_get_parent_filtered(), eeze_udev_syspath_get_property(), eeze_udev_syspath_get_sysattr(), eeze_udev_syspath_get_sysnum(), EEZE_UDEV_TYPE_DRM, EINA_FALSE, eina_list_append(), EINA_LIST_FOREACH, EINA_LIST_FREE, eina_stringshare_add(), eina_stringshare_del(), and EINA_TRUE.

## ◆ ecore_drm_device_free()

EAPI void ecore_drm_device_free | ( | Ecore_Drm_Device * | dev | ) |

Free an Ecore_Drm_Device.

This function will cleanup and free any previously allocated Ecore_Drm_Device.

Parameters

  dev | The Ecore_Drm_Device to free

Referenced by ecore_drm_shutdown().

## ◆ ecore_drm_device_open()

EAPI Eina_Bool ecore_drm_device_open | ( | Ecore_Drm_Device * | dev | ) |

Open an Ecore_Drm_Device.

This function will open an existing Ecore_Drm_Device for use.

Parameters

  dev | The Ecore_Drm_Device to try and open

Returns
  EINA_TRUE on success, EINA_FALSE on failure

References DBG, EEZE_UDEV_EVENT_ADD, EEZE_UDEV_EVENT_CHANGE, EEZE_UDEV_EVENT_REMOVE, EEZE_UDEV_TYPE_DRM, eeze_udev_watch_add(), EINA_FALSE, EINA_TRUE, and ERR.

## ◆ ecore_drm_device_close()

EAPI Eina_Bool ecore_drm_device_close | ( | Ecore_Drm_Device * | dev | ) |

Close an Ecore_Drm_Device.

This function will close a previously opened Ecore_Drm_Device

Parameters

  dev | The Ecore_Drm_Device to free

Returns
  EINA_TRUE on success, EINA_FALSE on failure

## ◆ ecore_drm_device_master_get()

EAPI Eina_Bool ecore_drm_device_master_get | ( | Ecore_Drm_Device * | dev | ) |

Get if a given Ecore_Drm_Device is master.

This function will check if the given drm device is set to master

Parameters

  dev | The Ecore_Drm_Device to check

Returns
  EINA_TRUE if device is master, EINA_FALSE otherwise

References EINA_FALSE, and EINA_TRUE.

## ◆ ecore_drm_device_master_set()

EAPI Eina_Bool ecore_drm_device_master_set | ( | Ecore_Drm_Device * | dev | ) |

Set a given Ecore_Drm_Device to master.

This function will attempt to set a given drm device to be master

Parameters

  dev | The Ecore_Drm_Device to set

Returns
  EINA_TRUE on success, EINA_FALSE on failure

References DBG, EINA_FALSE, and EINA_TRUE.

## ◆ ecore_drm_device_master_drop()

EAPI Eina_Bool ecore_drm_device_master_drop | ( | Ecore_Drm_Device * | dev | ) |

Tell a given Ecore_Drm_Device to stop being master.

This function will attempt to ask a drm device to stop being master

Parameters

  dev | The Ecore_Drm_Device to set

Returns
  EINA_TRUE on success, EINA_FALSE on failure

References DBG, EINA_FALSE, and EINA_TRUE.

## ◆ ecore_drm_device_fd_get()

EAPI int ecore_drm_device_fd_get | ( | Ecore_Drm_Device * | dev | ) |

Get the file descriptor of Ecore_Drm_Device.

This function will get the file descriptor of drm device

Parameters

  dev | The Ecore_Drm_Device to get

Returns
  fd value on success, -1 on failure

## ◆ ecore_drm_device_window_set()

EAPI void ecore_drm_device_window_set | ( | Ecore_Drm_Device * | dev,
|  | unsigned int | window
| ) |  |

Set the window of Ecore_Drm_Device.

This function will set the window for given drm device

Parameters

  dev | The Ecore_Drm_Device for which window is set
  window | The window to set

Since
  1.10

## ◆ ecore_drm_device_name_get()

EAPI const char* ecore_drm_device_name_get | ( | Ecore_Drm_Device * | dev | ) |

Get the name of the Ecore_Drm_Device.

This function will return the name of Ecore_Drm_Device

Parameters

  dev | The Ecore_Drm_Device to get name

Returns
  device name on success, NULL on failure

Since
  1.10

## ◆ ecore_drm_device_software_setup()

EAPI Eina_Bool ecore_drm_device_software_setup | ( | Ecore_Drm_Device * | dev | ) |

Setup an Ecore_Drm_Device for software rendering.

This function will setup an Ecore_Drm_Device for software rendering which includes creating dumb buffers to render into

Parameters

  dev | The Ecore_Drm_Device to setup for software rendering

Returns
  EINA_TRUE on success, EINA_FALSE on failure

Since
  1.14

## ◆ ecore_drm_device_pointer_left_handed_set()

EAPI Eina_Bool ecore_drm_device_pointer_left_handed_set | ( | Ecore_Drm_Device * | dev,
|  | Eina_Bool | left_handed
| ) |  |

Set a left handed mode at the given Ecore_Drm_Device.

This function will loop all the registered inputs in Ecore_Drm_Device and set/unset left handed mode.

Parameters

  dev | The Ecore_Drm_Device to set left handed mode
  left_handed | The flag of enable/disable left handed mode

Returns
  EINA_TRUE on success, EINA_FALSE on failure

Since
  1.17

## ◆ ecore_drm_device_keyboard_cached_context_set()

EAPI void ecore_drm_device_keyboard_cached_context_set | ( | struct xkb_context * | ctx | ) |

Setup a cached context to use same context for each devices.

This function will setup a cached context to use same context for each devices This function will be called before initialize Ecore_Drm.

Parameters

  ctx | struct xkb_context used in libxkbcommon

Since
  1.17

## ◆ ecore_drm_device_keyboard_cached_keymap_set()

EAPI void ecore_drm_device_keyboard_cached_keymap_set | ( | struct xkb_keymap * | map | ) |

Setup a cached keymap to use same keymap for each devices.

This function will setup a cached keymap to use same keymap for each devices This function will be called before initialize Ecore_Drm.

Parameters

  map | struct xkb_keymap used in libxkbcommon

Since
  1.17

## ◆ ecore_drm_device_output_find()

EAPI Ecore_Drm_Output* ecore_drm_device_output_find | ( | Ecore_Drm_Device * | dev,
|  | int | x,
|  | int | y
| ) |  |

Find an Ecore_Drm_Output at the given coordinates.

This function will loop all the existing outputs in Ecore_Drm_Device and return an output if one exists that encapsulates the given coordinates.

Parameters

  dev | The Ecore_Drm_Device to search
  x | The x coordinate
  y | The y coordinate

Returns
  An Ecore_Drm_Output if one exists at these coordinates or NULL

Since
  1.14

## ◆ ecore_drm_device_pointer_xy_get()

EAPI void ecore_drm_device_pointer_xy_get | ( | Ecore_Drm_Device * | dev,
|  | int * | x,
|  | int * | y
| ) |  |

Get the pointer position of Ecore_Drm_Device.

This function will give the pointer position of Ecore_Drm_Device

Parameters

  dev | The Ecore_Drm_Device to get pointer position for
  *x | The parameter in which output x co-ordinate is stored
  *y | The parameter in which output y co-ordinate is stored

Since
  1.14

## ◆ ecore_drm_devices_get()

EAPI const Eina_List* ecore_drm_devices_get | ( | void |  | ) |

Get the list of drm devices which are allocated.

Returns
  Eina_List of drm devices, NULL otherwise

Since
  1.14

Referenced by ecore_drm_shutdown().

## ◆ ecore_drm_screen_size_range_get()

EAPI void ecore_drm_screen_size_range_get | ( | Ecore_Drm_Device * | dev,
|  | int * | minw,
|  | int * | minh,
|  | int * | maxw,
|  | int * | maxh
| ) |  |

Get the minimum and maximum screen size range.

Parameters

  dev | The Ecore_Drm_Device to get screen size range from
  *minw | The parameter in which smallest width is stored
  *minh | The parameter in which smallest height is stored
  *maxw | The parameter in which largest width is stored
  *maxh | The parameter in which largest height is stored

Since
  1.15

## ◆ ecore_drm_device_output_name_find()

EAPI Ecore_Drm_Output* ecore_drm_device_output_name_find | ( | Ecore_Drm_Device * | dev,
|  | const char * | name
| ) |  |

Find an Ecore_Drm_Output which has the given name.

This function will loop all the existing outputs in Ecore_Drm_Device and return an output if one exists that matches the given name.

Parameters

  dev | The Ecore_Drm_Device to search
  name | The Ecore_Drm_Output matching this name

Returns
  An Ecore_Drm_Output if one exists at these coordinates or NULL

Since
  1.15