Utility functions that set up and shut down the Ecore Buffer library. More...
Data Structures | |
struct | _Ecore_Buffer_Backend |
Structure used when initializing Ecore Buffer Backend. More... | |
Typedefs | |
typedef struct _Ecore_Buffer | Ecore_Buffer |
An object representing a graphic buffer. More... | |
typedef struct _Ecore_Buffer_Backend | Ecore_Buffer_Backend |
The interfaces for backend of buffer. More... | |
typedef enum _Ecore_Export_Type | Ecore_Export_Type |
Types for export buffer. More... | |
typedef unsigned int | Ecore_Buffer_Format |
The format of Ecore_Buffer. More... | |
typedef unsigned long | Ecore_Pixmap |
An Id of Pixmap. More... | |
typedef void * | Ecore_Buffer_Module_Data |
The data of module. More... | |
typedef void * | Ecore_Buffer_Data |
The data of Ecore_Buffer. More... | |
typedef void(* | Ecore_Buffer_Cb) (Ecore_Buffer *buf, void *data) |
Called whenever Ecore_Buffer is freed. More... | |
Enumerations | |
enum | _Ecore_Export_Type { EXPORT_TYPE_INVALID , EXPORT_TYPE_ID , EXPORT_TYPE_FD } |
Types for export buffer. More... | |
Functions | |
EAPI Eina_Bool | ecore_buffer_init (void) |
Initializes the Ecore_Buffer system. More... | |
EAPI Eina_Bool | ecore_buffer_shutdown (void) |
Shuts down the Ecore_Buffer system. More... | |
EAPI Eina_Bool | ecore_buffer_register (Ecore_Buffer_Backend *be) |
Registers the given buffer backend. More... | |
EAPI void | ecore_buffer_unregister (Ecore_Buffer_Backend *be) |
Unregisters the given buffer backend. More... | |
EAPI Ecore_Buffer * | ecore_buffer_new (const char *engine, unsigned int width, unsigned int height, Ecore_Buffer_Format format, unsigned int flags) |
Creates a new Ecore_Buffer given type. More... | |
EAPI void | ecore_buffer_free (Ecore_Buffer *buf) |
Frees the given Ecore_Buffer. More... | |
EAPI void | ecore_buffer_free_callback_add (Ecore_Buffer *buf, Ecore_Buffer_Cb func, void *data) |
Sets a callback for Ecore_Buffer free events. More... | |
EAPI void | ecore_buffer_free_callback_remove (Ecore_Buffer *buf, Ecore_Buffer_Cb func, void *data) |
Removes a callback for Ecore_Buffer free events. More... | |
EAPI void * | ecore_buffer_data_get (Ecore_Buffer *buf) |
Get a pointer to the raw data of the given Ecore_Buffer. More... | |
EAPI Ecore_Pixmap | ecore_buffer_pixmap_get (Ecore_Buffer *buf) |
Returns the Pixmap of given Ecore_Buffer. More... | |
EAPI void * | ecore_buffer_tbm_surface_get (Ecore_Buffer *buf) |
Returns the tbm surface handle of given Ecore_Buffer. More... | |
EAPI Eina_Bool | ecore_buffer_size_get (Ecore_Buffer *buf, unsigned int *width, unsigned int *height) |
Returns size of given Ecore_Buffer. More... | |
EAPI Ecore_Buffer_Format | ecore_buffer_format_get (Ecore_Buffer *buf) |
Returns format of given Ecore_Buffer. More... | |
EAPI unsigned int | ecore_buffer_flags_get (Ecore_Buffer *buf) |
Returns the flags of given Ecore_Buffer. More... | |
Utility functions that set up and shut down the Ecore Buffer library.
This group of functions is applied to an Ecore_Buffer object.
An object representing a graphic buffer.
The interfaces for backend of buffer.
Types for export buffer.
The format of Ecore_Buffer.
An Id of Pixmap.
The data of module.
The data of Ecore_Buffer.
Ecore_Buffer_Cb |
Called whenever Ecore_Buffer is freed.
enum _Ecore_Export_Type |
Types for export buffer.
Initializes the Ecore_Buffer system.
EINA_TRUE
on success, EINA_FALSE
otherwise.References ecore_buffer_init(), eina_array_count(), EINA_FALSE, eina_hash_free(), eina_hash_string_superfast_new(), eina_log_domain_register(), eina_log_domain_unregister(), EINA_LOG_ERR, eina_module_arch_list_get(), eina_module_list_get(), eina_module_list_load(), eina_module_symbol_path_get(), EINA_TRUE, and ERR.
Referenced by ecore_buffer_init().
Shuts down the Ecore_Buffer system.
EINA_TRUE
on success, EINA_FALSE
otherwise.References eina_array_free(), EINA_FALSE, eina_hash_foreach(), eina_hash_free(), eina_log_domain_unregister(), eina_module_list_free(), and EINA_TRUE.
EAPI Eina_Bool ecore_buffer_register | ( | Ecore_Buffer_Backend * | be | ) |
Registers the given buffer backend.
[in] | be | The backend |
EINA_TRUE
if backend has been correctly registered, EINA_FALSE
otherwise. References EINA_FALSE, eina_hash_add(), EINA_SAFETY_ON_NULL_RETURN_VAL, and _Ecore_Buffer_Backend::name.
EAPI void ecore_buffer_unregister | ( | Ecore_Buffer_Backend * | be | ) |
Unregisters the given buffer backend.
[in] | be | The backend |
References eina_hash_del(), eina_hash_find(), EINA_SAFETY_ON_NULL_RETURN, and _Ecore_Buffer_Backend::name.
EAPI Ecore_Buffer * ecore_buffer_new | ( | const char * | engine, |
unsigned int | width, | ||
unsigned int | height, | ||
Ecore_Buffer_Format | format, | ||
unsigned int | flags | ||
) |
Creates a new Ecore_Buffer given type.
[in] | engine | The name of backend |
[in] | width | Width for Ecore_Buffer |
[in] | height | Height for Ecore_Buffer |
[in] | format | Format for Ecore_Buffer |
[in] | flags | Flags for Ecore_Buffer |
References EINA_SAFETY_ON_NULL_RETURN_VAL, and ERR.
EAPI void ecore_buffer_free | ( | Ecore_Buffer * | buf | ) |
Frees the given Ecore_Buffer.
[in] | buf | The Ecore_Buffer to free |
References eina_hash_free(), EINA_INLIST_CONTAINER_GET, eina_inlist_remove(), and EINA_SAFETY_ON_NULL_RETURN.
Referenced by ecore_buffer_consumer_buffer_release().
EAPI void ecore_buffer_free_callback_add | ( | Ecore_Buffer * | buf, |
Ecore_Buffer_Cb | func, | ||
void * | data | ||
) |
Sets a callback for Ecore_Buffer free events.
[in] | buf | The Ecore_Buffer to set callbacks on |
[in] | func | The function to call |
[in] | data | A pointer to the user data to store. |
A call to this function will set a callback on an Ecore_Buffer, causing func
to be called whenever buf
is freed.
References eina_inlist_append(), EINA_INLIST_GET, and EINA_SAFETY_ON_NULL_RETURN.
EAPI void ecore_buffer_free_callback_remove | ( | Ecore_Buffer * | buf, |
Ecore_Buffer_Cb | func, | ||
void * | data | ||
) |
Removes a callback for Ecore_Buffer free events.
[in] | buf | The Ecore_Buffer to remove callbacks on |
[in] | func | The function to remove |
[in] | data | A pointer to the user data to remove |
References EINA_INLIST_FOREACH_SAFE, EINA_INLIST_GET, eina_inlist_remove(), and EINA_SAFETY_ON_NULL_RETURN.
EAPI void * ecore_buffer_data_get | ( | Ecore_Buffer * | buf | ) |
Get a pointer to the raw data of the given Ecore_Buffer.
[in] | buf | The Ecore_Buffer. |
References EINA_SAFETY_ON_NULL_RETURN_VAL.
EAPI Ecore_Pixmap ecore_buffer_pixmap_get | ( | Ecore_Buffer * | buf | ) |
Returns the Pixmap of given Ecore_Buffer.
[in] | buf | The Ecore_Buffer |
0
otherwise. References EINA_SAFETY_ON_NULL_RETURN_VAL.
EAPI void * ecore_buffer_tbm_surface_get | ( | Ecore_Buffer * | buf | ) |
Returns the tbm surface handle of given Ecore_Buffer.
[in] | buf | The Ecore_Buffer |
The tbm surface handle will be used for the API of libtbm. The API is described in tbm_surface.h in libtbm.
References EINA_SAFETY_ON_NULL_RETURN_VAL, and ERR.
EAPI Eina_Bool ecore_buffer_size_get | ( | Ecore_Buffer * | buf, |
unsigned int * | width, | ||
unsigned int * | height | ||
) |
Returns size of given Ecore_Buffer.
[in] | buf | The Ecore_Buffer |
[out] | width | Where to return the width value. May be NULL . |
[out] | height | Where to return the height value. May be NULL . |
EINA_TRUE
on success, EINA_FALSE
otherwise. References EINA_FALSE, EINA_SAFETY_ON_NULL_RETURN_VAL, and EINA_TRUE.
EAPI Ecore_Buffer_Format ecore_buffer_format_get | ( | Ecore_Buffer * | buf | ) |
Returns format of given Ecore_Buffer.
[in] | buf | The Ecore_Buffer |
Return value can be one of those pre-defined value such as ECORE_BUFFER_FORMAT_XRGB8888.
References EINA_SAFETY_ON_NULL_RETURN_VAL.
EAPI unsigned int ecore_buffer_flags_get | ( | Ecore_Buffer * | buf | ) |
Returns the flags of given Ecore_Buffer.
[in] | buf | The Ecore_Buffer |
NOTE: Not Defined yet.
References EINA_SAFETY_ON_NULL_RETURN_VAL.