namespace efl { namespace pack { 
inline ::efl::eolian::return_traits<void>::type Layout::layout_engine_get( ::efl::eolian::out_traits< ::eo::Base>::type engine,  ::efl::eolian::out_traits<void const*&>::type data) const
{
    ::Eo_Base const* __out_param_engine = {};
   const void * __out_param_data = {};
    ::efl_pack_layout_engine_get(this->_eo_ptr()
      , & __out_param_engine
      , & __out_param_data);
   ::efl::eolian::assign_out< ::efl::eolian::out_traits< ::eo::Base>::type,  ::Eo_Base const*>(engine, __out_param_engine);
   ::efl::eolian::assign_out< ::efl::eolian::out_traits<void const*&>::type, const void *>(data, __out_param_data);
}
inline ::efl::eolian::return_traits<void>::type Layout::layout_engine_set( ::efl::eolian::in_traits< ::eo::Base>::type engine,  ::efl::eolian::in_traits<void const*>::type data) const
{
    ::efl_pack_layout_engine_set(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c< ::Eo_Base const*,  ::efl::eolian::in_traits< ::eo::Base>::type>(engine)
      ,  ::efl::eolian::convert_to_c<const void *,  ::efl::eolian::in_traits<void const*>::type>(data));
}
inline ::efl::eolian::return_traits<void>::type Layout::layout_request() const
{
    ::efl_pack_layout_request(this->_eo_ptr());
}
#ifdef EFL_PACK_LAYOUT_INTERFACE_PROTECTED
inline ::efl::eolian::return_traits<void>::type Layout::layout_update() const
{
    ::efl_pack_layout_update(this->_eo_ptr());
}
#endif
#ifdef EFL_PACK_LAYOUT_INTERFACE_PROTECTED
inline ::efl::eolian::return_traits<void>::type Layout::layout_do( ::efl::eolian::in_traits< ::efl::Gfx>::type pack,  ::efl::eolian::in_traits<void const*>::type data) const
{
    ::efl_pack_layout_do(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c< ::Efl_Gfx*,  ::efl::eolian::in_traits< ::efl::Gfx>::type>(pack)
      ,  ::efl::eolian::convert_to_c<const void *,  ::efl::eolian::in_traits<void const*>::type>(data));
}
#endif
} } 
namespace eo_cxx {
namespace efl { namespace pack { 
inline ::efl::eolian::return_traits<void>::type Layout::layout_engine_get( ::efl::eolian::out_traits< ::eo::Base>::type engine,  ::efl::eolian::out_traits<void const*&>::type data) const
{
    ::Eo_Base const* __out_param_engine = {};
   const void * __out_param_data = {};
    ::efl_pack_layout_engine_get(this->_eo_ptr()
      , & __out_param_engine
      , & __out_param_data);
   ::efl::eolian::assign_out< ::efl::eolian::out_traits< ::eo::Base>::type,  ::Eo_Base const*>(engine, __out_param_engine);
   ::efl::eolian::assign_out< ::efl::eolian::out_traits<void const*&>::type, const void *>(data, __out_param_data);
}
inline ::efl::eolian::return_traits<void>::type Layout::layout_engine_set( ::efl::eolian::in_traits< ::eo::Base>::type engine,  ::efl::eolian::in_traits<void const*>::type data) const
{
    ::efl_pack_layout_engine_set(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c< ::Eo_Base const*,  ::efl::eolian::in_traits< ::eo::Base>::type>(engine)
      ,  ::efl::eolian::convert_to_c<const void *,  ::efl::eolian::in_traits<void const*>::type>(data));
}
inline ::efl::eolian::return_traits<void>::type Layout::layout_request() const
{
    ::efl_pack_layout_request(this->_eo_ptr());
}
#ifdef EFL_PACK_LAYOUT_INTERFACE_PROTECTED
inline ::efl::eolian::return_traits<void>::type Layout::layout_update() const
{
    ::efl_pack_layout_update(this->_eo_ptr());
}
#endif
#ifdef EFL_PACK_LAYOUT_INTERFACE_PROTECTED
inline ::efl::eolian::return_traits<void>::type Layout::layout_do( ::efl::eolian::in_traits< ::efl::Gfx>::type pack,  ::efl::eolian::in_traits<void const*>::type data) const
{
    ::efl_pack_layout_do(this->_eo_ptr()
      ,  ::efl::eolian::convert_to_c< ::Efl_Gfx*,  ::efl::eolian::in_traits< ::efl::Gfx>::type>(pack)
      ,  ::efl::eolian::convert_to_c<const void *,  ::efl::eolian::in_traits<void const*>::type>(data));
}
#endif
inline efl::pack::Layout::operator ::efl::pack::Layout() const { return *static_cast< ::efl::pack::Layout const*>(static_cast<void const*>(this)); }
inline efl::pack::Layout::operator ::efl::pack::Layout&() { return *static_cast< ::efl::pack::Layout*>(static_cast<void*>(this)); }
inline efl::pack::Layout::operator ::efl::pack::Layout const&() const { return *static_cast< ::efl::pack::Layout const*>(static_cast<void const*>(this)); }
} } }

