
void _efl_ui_relative_container_relation_left_set(Eo *obj, Efl_Ui_Relative_Container_Data *pd, Efl_Gfx_Entity *child, Efl_Gfx_Entity *base, Efl_Gfx_Align relative_position);

EAPI EAPI_WEAK EFL_VOID_FUNC_BODYV(efl_ui_relative_container_relation_left_set, EFL_FUNC_CALL(child, base, relative_position), Efl_Gfx_Entity *child, Efl_Gfx_Entity *base, Efl_Gfx_Align relative_position);

void _efl_ui_relative_container_relation_left_get(const Eo *obj, Efl_Ui_Relative_Container_Data *pd, Efl_Gfx_Entity *child, Efl_Gfx_Entity **base, Efl_Gfx_Align *relative_position);

static void __eolian_efl_ui_relative_container_relation_left_get(const Eo *obj, Efl_Ui_Relative_Container_Data *pd, Efl_Gfx_Entity *child, Efl_Gfx_Entity **base, Efl_Gfx_Align *relative_position)
{
   if (relative_position) *relative_position = 0.000000;
   _efl_ui_relative_container_relation_left_get(obj, pd, child, base, relative_position);
}

EAPI EAPI_WEAK EFL_VOID_FUNC_BODYV_CONST(efl_ui_relative_container_relation_left_get, EFL_FUNC_CALL(child, base, relative_position), Efl_Gfx_Entity *child, Efl_Gfx_Entity **base, Efl_Gfx_Align *relative_position);

void _efl_ui_relative_container_relation_right_set(Eo *obj, Efl_Ui_Relative_Container_Data *pd, Efl_Gfx_Entity *child, Efl_Gfx_Entity *base, Efl_Gfx_Align relative_position);

EAPI EAPI_WEAK EFL_VOID_FUNC_BODYV(efl_ui_relative_container_relation_right_set, EFL_FUNC_CALL(child, base, relative_position), Efl_Gfx_Entity *child, Efl_Gfx_Entity *base, Efl_Gfx_Align relative_position);

void _efl_ui_relative_container_relation_right_get(const Eo *obj, Efl_Ui_Relative_Container_Data *pd, Efl_Gfx_Entity *child, Efl_Gfx_Entity **base, Efl_Gfx_Align *relative_position);

static void __eolian_efl_ui_relative_container_relation_right_get(const Eo *obj, Efl_Ui_Relative_Container_Data *pd, Efl_Gfx_Entity *child, Efl_Gfx_Entity **base, Efl_Gfx_Align *relative_position)
{
   if (relative_position) *relative_position = 1.000000;
   _efl_ui_relative_container_relation_right_get(obj, pd, child, base, relative_position);
}

EAPI EAPI_WEAK EFL_VOID_FUNC_BODYV_CONST(efl_ui_relative_container_relation_right_get, EFL_FUNC_CALL(child, base, relative_position), Efl_Gfx_Entity *child, Efl_Gfx_Entity **base, Efl_Gfx_Align *relative_position);

void _efl_ui_relative_container_relation_top_set(Eo *obj, Efl_Ui_Relative_Container_Data *pd, Efl_Gfx_Entity *child, Efl_Gfx_Entity *base, Efl_Gfx_Align relative_position);

EAPI EAPI_WEAK EFL_VOID_FUNC_BODYV(efl_ui_relative_container_relation_top_set, EFL_FUNC_CALL(child, base, relative_position), Efl_Gfx_Entity *child, Efl_Gfx_Entity *base, Efl_Gfx_Align relative_position);

void _efl_ui_relative_container_relation_top_get(const Eo *obj, Efl_Ui_Relative_Container_Data *pd, Efl_Gfx_Entity *child, Efl_Gfx_Entity **base, Efl_Gfx_Align *relative_position);

static void __eolian_efl_ui_relative_container_relation_top_get(const Eo *obj, Efl_Ui_Relative_Container_Data *pd, Efl_Gfx_Entity *child, Efl_Gfx_Entity **base, Efl_Gfx_Align *relative_position)
{
   if (relative_position) *relative_position = 0.000000;
   _efl_ui_relative_container_relation_top_get(obj, pd, child, base, relative_position);
}

EAPI EAPI_WEAK EFL_VOID_FUNC_BODYV_CONST(efl_ui_relative_container_relation_top_get, EFL_FUNC_CALL(child, base, relative_position), Efl_Gfx_Entity *child, Efl_Gfx_Entity **base, Efl_Gfx_Align *relative_position);

void _efl_ui_relative_container_relation_bottom_set(Eo *obj, Efl_Ui_Relative_Container_Data *pd, Efl_Gfx_Entity *child, Efl_Gfx_Entity *base, Efl_Gfx_Align relative_position);

EAPI EAPI_WEAK EFL_VOID_FUNC_BODYV(efl_ui_relative_container_relation_bottom_set, EFL_FUNC_CALL(child, base, relative_position), Efl_Gfx_Entity *child, Efl_Gfx_Entity *base, Efl_Gfx_Align relative_position);

void _efl_ui_relative_container_relation_bottom_get(const Eo *obj, Efl_Ui_Relative_Container_Data *pd, Efl_Gfx_Entity *child, Efl_Gfx_Entity **base, Efl_Gfx_Align *relative_position);

static void __eolian_efl_ui_relative_container_relation_bottom_get(const Eo *obj, Efl_Ui_Relative_Container_Data *pd, Efl_Gfx_Entity *child, Efl_Gfx_Entity **base, Efl_Gfx_Align *relative_position)
{
   if (relative_position) *relative_position = 1.000000;
   _efl_ui_relative_container_relation_bottom_get(obj, pd, child, base, relative_position);
}

EAPI EAPI_WEAK EFL_VOID_FUNC_BODYV_CONST(efl_ui_relative_container_relation_bottom_get, EFL_FUNC_CALL(child, base, relative_position), Efl_Gfx_Entity *child, Efl_Gfx_Entity **base, Efl_Gfx_Align *relative_position);

Efl_Object *_efl_ui_relative_container_efl_object_constructor(Eo *obj, Efl_Ui_Relative_Container_Data *pd);


void _efl_ui_relative_container_efl_object_invalidate(Eo *obj, Efl_Ui_Relative_Container_Data *pd);


void _efl_ui_relative_container_efl_object_destructor(Eo *obj, Efl_Ui_Relative_Container_Data *pd);


void _efl_ui_relative_container_efl_canvas_group_group_calculate(Eo *obj, Efl_Ui_Relative_Container_Data *pd);


Eina_Bool _efl_ui_relative_container_efl_pack_pack_clear(Eo *obj, Efl_Ui_Relative_Container_Data *pd);


Eina_Bool _efl_ui_relative_container_efl_pack_unpack_all(Eo *obj, Efl_Ui_Relative_Container_Data *pd);


Eina_Bool _efl_ui_relative_container_efl_pack_unpack(Eo *obj, Efl_Ui_Relative_Container_Data *pd, Efl_Gfx_Entity *subobj);


Eina_Bool _efl_ui_relative_container_efl_pack_pack(Eo *obj, Efl_Ui_Relative_Container_Data *pd, Efl_Gfx_Entity *subobj);


Eina_Iterator *_efl_ui_relative_container_efl_container_content_iterate(Eo *obj, Efl_Ui_Relative_Container_Data *pd);


int _efl_ui_relative_container_efl_container_content_count(Eo *obj, Efl_Ui_Relative_Container_Data *pd);


void _efl_ui_relative_container_efl_gfx_entity_position_set(Eo *obj, Efl_Ui_Relative_Container_Data *pd, Eina_Position2D pos);


void _efl_ui_relative_container_efl_gfx_entity_size_set(Eo *obj, Efl_Ui_Relative_Container_Data *pd, Eina_Size2D size);


void _efl_ui_relative_container_efl_pack_layout_layout_update(Eo *obj, Efl_Ui_Relative_Container_Data *pd);


void _efl_ui_relative_container_efl_pack_layout_layout_request(Eo *obj, Efl_Ui_Relative_Container_Data *pd);


static Eina_Bool
_efl_ui_relative_container_class_initializer(Efl_Class *klass)
{
   const Efl_Object_Ops *opsp = NULL;

   const Efl_Object_Property_Reflection_Ops *ropsp = NULL;

#ifndef EFL_UI_RELATIVE_CONTAINER_EXTRA_OPS
#define EFL_UI_RELATIVE_CONTAINER_EXTRA_OPS
#endif

   EFL_OPS_DEFINE(ops,
      EFL_OBJECT_OP_FUNC(efl_ui_relative_container_relation_left_set, _efl_ui_relative_container_relation_left_set),
      EFL_OBJECT_OP_FUNC(efl_ui_relative_container_relation_left_get, __eolian_efl_ui_relative_container_relation_left_get),
      EFL_OBJECT_OP_FUNC(efl_ui_relative_container_relation_right_set, _efl_ui_relative_container_relation_right_set),
      EFL_OBJECT_OP_FUNC(efl_ui_relative_container_relation_right_get, __eolian_efl_ui_relative_container_relation_right_get),
      EFL_OBJECT_OP_FUNC(efl_ui_relative_container_relation_top_set, _efl_ui_relative_container_relation_top_set),
      EFL_OBJECT_OP_FUNC(efl_ui_relative_container_relation_top_get, __eolian_efl_ui_relative_container_relation_top_get),
      EFL_OBJECT_OP_FUNC(efl_ui_relative_container_relation_bottom_set, _efl_ui_relative_container_relation_bottom_set),
      EFL_OBJECT_OP_FUNC(efl_ui_relative_container_relation_bottom_get, __eolian_efl_ui_relative_container_relation_bottom_get),
      EFL_OBJECT_OP_FUNC(efl_constructor, _efl_ui_relative_container_efl_object_constructor),
      EFL_OBJECT_OP_FUNC(efl_invalidate, _efl_ui_relative_container_efl_object_invalidate),
      EFL_OBJECT_OP_FUNC(efl_destructor, _efl_ui_relative_container_efl_object_destructor),
      EFL_OBJECT_OP_FUNC(efl_canvas_group_calculate, _efl_ui_relative_container_efl_canvas_group_group_calculate),
      EFL_OBJECT_OP_FUNC(efl_pack_clear, _efl_ui_relative_container_efl_pack_pack_clear),
      EFL_OBJECT_OP_FUNC(efl_pack_unpack_all, _efl_ui_relative_container_efl_pack_unpack_all),
      EFL_OBJECT_OP_FUNC(efl_pack_unpack, _efl_ui_relative_container_efl_pack_unpack),
      EFL_OBJECT_OP_FUNC(efl_pack, _efl_ui_relative_container_efl_pack_pack),
      EFL_OBJECT_OP_FUNC(efl_content_iterate, _efl_ui_relative_container_efl_container_content_iterate),
      EFL_OBJECT_OP_FUNC(efl_content_count, _efl_ui_relative_container_efl_container_content_count),
      EFL_OBJECT_OP_FUNC(efl_gfx_entity_position_set, _efl_ui_relative_container_efl_gfx_entity_position_set),
      EFL_OBJECT_OP_FUNC(efl_gfx_entity_size_set, _efl_ui_relative_container_efl_gfx_entity_size_set),
      EFL_OBJECT_OP_FUNC(efl_pack_layout_update, _efl_ui_relative_container_efl_pack_layout_layout_update),
      EFL_OBJECT_OP_FUNC(efl_pack_layout_request, _efl_ui_relative_container_efl_pack_layout_layout_request),
      EFL_UI_RELATIVE_CONTAINER_EXTRA_OPS
   );
   opsp = &ops;

   return efl_class_functions_set(klass, opsp, ropsp);
}

static const Efl_Class_Description _efl_ui_relative_container_class_desc = {
   EO_VERSION,
   "Efl.Ui.Relative_Container",
   EFL_CLASS_TYPE_REGULAR,
   sizeof(Efl_Ui_Relative_Container_Data),
   _efl_ui_relative_container_class_initializer,
   NULL,
   NULL
};

EFL_DEFINE_CLASS(efl_ui_relative_container_class_get, &_efl_ui_relative_container_class_desc, EFL_UI_WIDGET_CLASS, EFL_PACK_LAYOUT_INTERFACE, EFL_PACK_INTERFACE, NULL);
