Enumerations | |
enum | Emotion_Suspend { EMOTION_WAKEUP, EMOTION_SLEEP, EMOTION_DEEP_SLEEP, EMOTION_HIBERNATE } |
Used for emotion pipeline ressource management. More... | |
Functions | |
EAPI void | emotion_object_priority_set (Evas_Object *obj, Eina_Bool priority) |
Raise priority of an object so it will have a priviledged access to hardware ressource. More... | |
EAPI Eina_Bool | emotion_object_priority_get (const Evas_Object *obj) |
Get the actual priority of an object. More... | |
EAPI void | emotion_object_suspend_set (Evas_Object *obj, Emotion_Suspend state) |
Change the state of an object pipeline. More... | |
EAPI Emotion_Suspend | emotion_object_suspend_get (Evas_Object *obj) |
Get the current state of the pipeline. More... | |
enum Emotion_Suspend |
Used for emotion pipeline ressource management.
EAPI void emotion_object_priority_set | ( | Evas_Object * | obj, |
Eina_Bool | priority | ||
) |
Raise priority of an object so it will have a priviledged access to hardware ressource.
obj | The object which the query is being ran on. |
priority | EINA_TRUE means give me a priority access to the hardware ressource. |
Hardware have a few dedicated hardware pipeline that process the video at no cost for the CPU. Especially on SoC, you mostly have one (on mobile phone SoC) or two (on Set Top Box SoC) when Picture in Picture is needed. And most application just have a few video stream that really deserve high frame rate, hiogh quality output. That's why this call is for.
Please note that if Emotion can't acquire a priviledged hardware ressource, it will fallback to the no-priority path. This work on the first asking first get basis system.
References EAPI.
EAPI Eina_Bool emotion_object_priority_get | ( | const Evas_Object * | obj | ) |
Get the actual priority of an object.
obj | The object which the query is being ran on. |
This actually return the priority status of an object. If it failed to have a priviledged access to the hardware, it will return EINA_FALSE.
References EAPI, EINA_REFCOUNT_UNREF, EINA_UNUSED, emotion_object_position_set(), evas_object_smart_callback_call(), evas_object_smart_data_set(), and evas_object_smart_parent_get().
EAPI void emotion_object_suspend_set | ( | Evas_Object * | obj, |
Emotion_Suspend | state | ||
) |
Change the state of an object pipeline.
obj | The object which the query is being ran on. |
state | The new state for the object. |
Changing the state of a pipeline should help preserve the battery of an embedded device. But it will only work sanely if the pipeline is not playing at the time you change its state. Depending on the engine all state may be not implemented.
References EAPI, EMOTION_DEEP_SLEEP, EMOTION_HIBERNATE, EMOTION_SLEEP, and EMOTION_WAKEUP.
Referenced by emotion_object_play_set().
EAPI Emotion_Suspend emotion_object_suspend_get | ( | Evas_Object * | obj | ) |
Get the current state of the pipeline.
obj | The object which the query is being ran on. |
References _Evas_Smart_Class::add, _Evas_Smart_Class::callbacks, _Evas_Position::canvas, _Evas_Event_Mouse_Down::canvas, _Evas_Smart_Class::clip_set, _Evas_Smart_Class::clip_unset, _Evas_Smart_Class::color_set, _Evas_Event_Mouse_Move::cur, _Evas_Smart_Class::del, EAPI, ecore_animator_add(), ecore_animator_del(), ecore_job_del(), EINA_FALSE, EINA_REFCOUNT_INIT, EINA_REFCOUNT_UNREF, eina_stringshare_del(), emotion_object_play_set(), emotion_object_position_set(), EMOTION_WAKEUP, EVAS_CALLBACK_MOUSE_DOWN, EVAS_CALLBACK_MOUSE_MOVE, EVAS_COLORSPACE_ARGB8888, EVAS_COLORSPACE_YCBCR422P601_PL, evas_object_clip_set(), evas_object_clip_unset(), evas_object_color_get(), evas_object_color_set(), evas_object_del(), evas_object_evas_get(), evas_object_event_callback_add(), evas_object_geometry_get(), evas_object_hide(), evas_object_image_add(), evas_object_image_alpha_set(), evas_object_image_colorspace_set(), evas_object_image_data_get(), evas_object_image_data_set(), evas_object_image_data_update_add(), evas_object_image_fill_set(), evas_object_image_pixels_dirty_set(), evas_object_image_pixels_get_callback_set(), evas_object_image_size_get(), evas_object_image_size_set(), evas_object_lower(), evas_object_move(), evas_object_rectangle_add(), evas_object_resize(), evas_object_show(), evas_object_size_hint_request_set(), evas_object_smart_callback_call(), evas_object_smart_data_get(), evas_object_smart_data_set(), evas_object_smart_member_add(), EVAS_SMART_CLASS_INIT_NAME_VERSION, evas_smart_class_new(), _Evas_Smart_Class::hide, _Evas_Smart_Class::move, _Evas_Smart_Class::resize, _Evas_Smart_Class::show, _Evas_Coord_Point::x, and _Evas_Coord_Point::y.