Tizen Native API
5.0
|
This group of functions is applied to an Ecore_Buffer_Consumer object. Ecore_Buffer_Consumer receives Ecore_Buffer enqueued by Ecore_Buffer_Provider. Consumer must release Ecore_Buffer when it's no longer used. Thus, the Ecore_Buffer_Provider is now free to re-use or destroy Ecore_Buffer.
Functions | |
Ecore_Buffer_Consumer * | ecore_buffer_consumer_new (const char *name, int32_t queue_size, int32_t w, int32_t h) |
Creates a new Buffer Consumer based on name and common parameters. | |
void | ecore_buffer_consumer_free (Ecore_Buffer_Consumer *consumer) |
Frees an Ecore_Buffer_Consumer. | |
Ecore_Buffer * | ecore_buffer_consumer_buffer_dequeue (Ecore_Buffer_Consumer *consumer) |
Returns the latest Ecore_Buffer submitted by provider. | |
Eina_Bool | ecore_buffer_consumer_buffer_release (Ecore_Buffer_Consumer *consumer, Ecore_Buffer *buffer) |
Releases the acquired Ecore_Buffer. | |
Eina_Bool | ecore_buffer_consumer_queue_is_empty (Ecore_Buffer_Consumer *consumer) |
Checks if Queue of Ecore_Buffer is empty. | |
void | ecore_buffer_consumer_provider_add_cb_set (Ecore_Buffer_Consumer *consumer, Ecore_Buffer_Consumer_Provider_Add_Cb func, void *data) |
Sets a callback for provider connection events. | |
void | ecore_buffer_consumer_provider_del_cb_set (Ecore_Buffer_Consumer *consumer, Ecore_Buffer_Consumer_Provider_Del_Cb func, void *data) |
Sets a callback for provider disconnection events. | |
void | ecore_buffer_consumer_buffer_enqueued_cb_set (Ecore_Buffer_Consumer *consumer, Ecore_Buffer_Consumer_Enqueue_Cb func, void *data) |
Sets a callback for enqueued buffer events. | |
Typedefs | |
typedef struct _Ecore_Buffer_Consumer | Ecore_Buffer_Consumer |
typedef void(* | Ecore_Buffer_Consumer_Provider_Add_Cb )(Ecore_Buffer_Consumer *consumer, void *data) |
Called whenever a Ecore_Buffer_Provider connected. | |
typedef void(* | Ecore_Buffer_Consumer_Provider_Del_Cb )(Ecore_Buffer_Consumer *consumer, void *data) |
Called whenever a Ecore_Buffer_Provider disonnected. | |
typedef void(* | Ecore_Buffer_Consumer_Enqueue_Cb )(Ecore_Buffer_Consumer *consumer, void *data) |
Called whenever a Ecore_Buffer enqueued in buffer queue. |
An object representing a consumer of Ecore_Buffer.
Called whenever a Ecore_Buffer enqueued in buffer queue.
Called whenever a Ecore_Buffer_Provider connected.
Called whenever a Ecore_Buffer_Provider disonnected.
Returns the latest Ecore_Buffer submitted by provider.
[in] | consumer | The Ecore_Buffer_Consumer to request for buffer |
NULL
if acquirement failed.Consumer can store Ecore_Buffer submitted by Provider as much as size of queue which is passed as a argument of ecore_buffer_consumer_new().
void ecore_buffer_consumer_buffer_enqueued_cb_set | ( | Ecore_Buffer_Consumer * | consumer, |
Ecore_Buffer_Consumer_Enqueue_Cb | func, | ||
void * | data | ||
) |
Sets a callback for enqueued buffer events.
[in] | consumer | The Ecore_Buffer_Consumer 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_Consumer, causing func
to be called whenever consumer
has received buffer submitted from provider.
You may success acquire Ecore_Buffer after this callback called.
Eina_Bool ecore_buffer_consumer_buffer_release | ( | Ecore_Buffer_Consumer * | consumer, |
Ecore_Buffer * | buffer | ||
) |
Releases the acquired Ecore_Buffer.
[in] | consumer | The Ecore_Buffer_Consumer to request release buffer |
[in] | buffer | The Ecore_Buffer to release |
EINA_TRUE
on success, EINA_FALSE
otherwise.Consumer should release the Ecore_Buffer after acquiring and using it. By doing release, Ecore_Buffer will be used by provider again, or freed internally if Ecore_Buffer is not necessary anymore. If not, the resource of Ecore_Buffer is continually owned by consumer until released.
void ecore_buffer_consumer_free | ( | Ecore_Buffer_Consumer * | consumer | ) |
Frees an Ecore_Buffer_Consumer.
[in] | consumer | The Ecore_Buffer_Consumer to free |
This frees up any memory used by the Ecore_Buffer_Consumer.
Ecore_Buffer_Consumer* ecore_buffer_consumer_new | ( | const char * | name, |
int32_t | queue_size, | ||
int32_t | w, | ||
int32_t | h | ||
) |
Creates a new Buffer Consumer based on name and common parameters.
[in] | name | The name of Buffer_Queue, this is needed by Consumer and Provider to connect each other. |
[in] | queue_size | Size of Queue (If you pass this 0, then default size two(2) is appied) |
[in] | w | Width of buffer recommended to provider. |
[in] | h | Height of buffer recommended to provider. |
NULL
if creation failed.void ecore_buffer_consumer_provider_add_cb_set | ( | Ecore_Buffer_Consumer * | consumer, |
Ecore_Buffer_Consumer_Provider_Add_Cb | func, | ||
void * | data | ||
) |
Sets a callback for provider connection events.
[in] | consumer | The Ecore_Buffer_Consumer 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_Consumer, causing func
to be called whenever consumer
is connected with provider.
void ecore_buffer_consumer_provider_del_cb_set | ( | Ecore_Buffer_Consumer * | consumer, |
Ecore_Buffer_Consumer_Provider_Del_Cb | func, | ||
void * | data | ||
) |
Sets a callback for provider disconnection events.
[in] | consumer | The Ecore_Buffer_Consumer 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_Consumer, causing func
to be called whenever consumer
is disconnected with provider.
Checks if Queue of Ecore_Buffer is empty.
[in] | consumer | The Ecore_Buffer_Consumer to query |
EINA_TRUE
means queue is empty, EINA_FALSE
otherwise.