This group of functions is applied to an Ecore_Buffer_Provider object. More...
| Typedefs | |
| typedef struct _Ecore_Buffer_Provider | Ecore_Buffer_Provider | 
| An object representing a provider of Ecore_Buffer.  More... | |
| typedef void(* | Ecore_Buffer_Provider_Consumer_Add_Cb) (Ecore_Buffer_Provider *provider, int queue_size, int w, int h, void *data) | 
| Called whenever a Ecore_Buffer_Consumer connected.  More... | |
| typedef void(* | Ecore_Buffer_Provider_Consumer_Del_Cb) (Ecore_Buffer_Provider *provider, void *data) | 
| Called whenever a Ecore_Buffer_Consumer disconnected.  More... | |
| typedef void(* | Ecore_Buffer_Provider_Enqueue_Cb) (Ecore_Buffer_Provider *provider, void *data) | 
| Called whenever a Ecore_Buffer is released.  More... | |
| Enumerations | |
| enum | _Ecore_Buffer_Return { ECORE_BUFFER_RETURN_ERROR , ECORE_BUFFER_RETURN_SUCCESS , ECORE_BUFFER_RETURN_EMPTY , ECORE_BUFFER_RETURN_NOT_EMPTY , ECORE_BUFFER_RETURN_NEED_ALLOC } | 
| Types for an buffer queue state on provider side.  More... | |
This group of functions is applied to an Ecore_Buffer_Provider object.
Ecore_Buffer_Provider provides Ecore_Buffer to Ecore_Buffer_Consumer(usually different process or thread from Ecore_Buffer_Provider). Ecore_Buffer_Provider should creates Ecore_Buffer as a provider.
An object representing a provider of Ecore_Buffer.
| Ecore_Buffer_Provider_Consumer_Add_Cb | 
Called whenever a Ecore_Buffer_Consumer connected.
| Ecore_Buffer_Provider_Consumer_Del_Cb | 
Called whenever a Ecore_Buffer_Consumer disconnected.
| Ecore_Buffer_Provider_Enqueue_Cb | 
Called whenever a Ecore_Buffer is released.
| enum _Ecore_Buffer_Return | 
Types for an buffer queue state on provider side.
| EAPI Ecore_Buffer_Provider* ecore_buffer_provider_new | ( | const char * | name | ) | 
Creates a new Buffer Provider based on name.
| [in] | name | The name of Buffer_Queue. | 
NULL if creation failed. References DBG, EINA_SAFETY_ON_NULL_RETURN_VAL, and ERR.
| EAPI void ecore_buffer_provider_free | ( | Ecore_Buffer_Provider * | provider | ) | 
Frees an Ecore_Buffer_Provider.
| [in] | provider | The Ecore_Buffer_Provider to free | 
This frees up any memory used by the Ecore_Buffer_Provider.
References DBG, EINA_LIST_FOREACH, and EINA_SAFETY_ON_NULL_RETURN.
| EAPI Ecore_Buffer_Return ecore_buffer_provider_buffer_acquire | ( | Ecore_Buffer_Provider * | provider, | 
| Ecore_Buffer ** | ret_buf | ||
| ) | 
Returns the Ecore_Buffer released by consumer or State of Queue.
| [in] | provider | The Ecore_Buffer_Provider to request for buffer | 
| [out] | ret_buf | A Pointer to the Ecore_Buffer | 
This function gives you drawable buffer and inform you the state of Queue. Each return value of enumeration has meaning as below.
References DBG, EINA_SAFETY_ON_NULL_RETURN_VAL, and ERR.
| EAPI Eina_Bool ecore_buffer_provider_buffer_enqueue | ( | Ecore_Buffer_Provider * | provider, | 
| Ecore_Buffer * | buffer | ||
| ) | 
Submits the Ecore_Buffer to Consumer to request compositing.
| [in] | provider | The Ecore_Buffer_Provider connected with consumer. | 
| [in] | buffer | The Ecore_Buffer to submit | 
EINA_TRUE on success, EINA_FALSE otherwise.This function allow you to submit the Ecore_Buffer to consumer to request compositing. And this will be success, in case only you submit dequeued Ecore_Buffer, and new Ecore_Buffer after received return value of ECORE_BUFFER_RETURN_NEED_ALLOC by ecore_buffer_provider_buffer_acquire().
References DBG, EINA_FALSE, EINA_SAFETY_ON_NULL_RETURN_VAL, EINA_TRUE, and ERR.
| EAPI Ecore_Buffer_Return ecore_buffer_provider_buffer_acquirable_check | ( | Ecore_Buffer_Provider * | provider | ) | 
Checks if state of queue.
| [in] | provider | The Ecore_Buffer_Provider to query | 
EINA_TRUE means queue is empty, EINA_FALSE otherwise. References EINA_FALSE, and EINA_SAFETY_ON_NULL_RETURN_VAL.
| EAPI void ecore_buffer_provider_consumer_add_cb_set | ( | Ecore_Buffer_Provider * | provider, | 
| Ecore_Buffer_Provider_Consumer_Add_Cb | func, | ||
| void * | data | ||
| ) | 
Sets a callback for consumer connection events.
| [in] | provider | The Ecore_Buffer_Provider 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_Provider, causing func to be called whenever provider is connected with consumer. 
References EINA_SAFETY_ON_NULL_RETURN.
| EAPI void ecore_buffer_provider_consumer_del_cb_set | ( | Ecore_Buffer_Provider * | provider, | 
| Ecore_Buffer_Provider_Consumer_Del_Cb | func, | ||
| void * | data | ||
| ) | 
Sets a callback for consumer disconnection events.
| [in] | provider | The Ecore_Buffer_Provider 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_Provider, causing func to be called whenever provider is disconnected with consumer. 
References EINA_SAFETY_ON_NULL_RETURN.
| EAPI void ecore_buffer_provider_buffer_released_cb_set | ( | Ecore_Buffer_Provider * | provider, | 
| Ecore_Buffer_Provider_Enqueue_Cb | func, | ||
| void * | data | ||
| ) | 
Sets a callback for released buffer events.
| [in] | provider | The Ecore_Buffer_Provider 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_Provider, causing func to be called whenever provider has received Ecore_Buffer released from provider.
You may success dequeue the Ecore_Buffer after this callback called.
References EINA_SAFETY_ON_NULL_RETURN.