GOmxPort * g_omx_core_get_port (GOmxCore *core, const gchar *name, guint index) { GOmxPort *port = get_port (core, index); if (!port) { port = g_omx_port_new (core, name, index); g_ptr_array_insert (core->ports, index, port); } return port; }
GOmxPort * g_omx_core_new_port (GOmxCore *core, guint index) { GOmxPort *port = get_port (core, index); if (port) { GST_WARNING_OBJECT (core->object, "port %d already exists", index); return port; } port = g_omx_port_new (core, index); g_ptr_array_insert (core->ports, index, port); return port; }
GOmxPort * g_omx_core_setup_port (GOmxCore *core, OMX_PARAM_PORTDEFINITIONTYPE *omx_port) { GOmxPort *port; guint index; index = omx_port->nPortIndex; port = g_omx_core_get_port (core, index); if (!port) { port = g_omx_port_new (core); } g_omx_port_setup (port, omx_port); g_ptr_array_insert (core->ports, index, port); return port; }