EAPI EAPI_WEAK EFL_VOID_FUNC_BODYV(efl_ui_spotlight_indicator_bind, EFL_FUNC_CALL(spotlight), Efl_Ui_Spotlight_Container *spotlight);
EAPI EAPI_WEAK EFL_VOID_FUNC_BODYV(efl_ui_spotlight_indicator_content_add, EFL_FUNC_CALL(subobj, index), Efl_Gfx_Entity *subobj, int index);
EAPI EAPI_WEAK EFL_VOID_FUNC_BODYV(efl_ui_spotlight_indicator_content_del, EFL_FUNC_CALL(subobj, index), Efl_Gfx_Entity *subobj, int index);
EAPI EAPI_WEAK EFL_VOID_FUNC_BODYV(efl_ui_spotlight_indicator_position_update, EFL_FUNC_CALL(position), double position);

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

   const Efl_Object_Property_Reflection_Ops *ropsp = NULL;

#ifndef EFL_UI_SPOTLIGHT_INDICATOR_EXTRA_OPS
#define EFL_UI_SPOTLIGHT_INDICATOR_EXTRA_OPS
#endif

   EFL_OPS_DEFINE(ops,
      EFL_OBJECT_OP_FUNC(efl_ui_spotlight_indicator_bind, NULL),
      EFL_OBJECT_OP_FUNC(efl_ui_spotlight_indicator_content_add, NULL),
      EFL_OBJECT_OP_FUNC(efl_ui_spotlight_indicator_content_del, NULL),
      EFL_OBJECT_OP_FUNC(efl_ui_spotlight_indicator_position_update, NULL),
      EFL_UI_SPOTLIGHT_INDICATOR_EXTRA_OPS
   );
   opsp = &ops;

   return efl_class_functions_set(klass, opsp, ropsp);
}

static const Efl_Class_Description _efl_ui_spotlight_indicator_class_desc = {
   EO_VERSION,
   "Efl.Ui.Spotlight.Indicator",
   EFL_CLASS_TYPE_REGULAR_NO_INSTANT,
   sizeof(Efl_Ui_Spotlight_Indicator_Data),
   _efl_ui_spotlight_indicator_class_initializer,
   NULL,
   NULL
};

EFL_DEFINE_CLASS(efl_ui_spotlight_indicator_class_get, &_efl_ui_spotlight_indicator_class_desc, EFL_OBJECT_CLASS, NULL);
