Re: [Ekiga-devel-list] [RFC] Plugins/Order of initialization in Ekiga



Jan Schampera a écrit :
y0,

I stuck with the following scheme now:

main()
+---- PProcess::PreInitialise ()
+---- g_thread_init ()
+---- gdk_threads_init ()
create services&plugin manager, register plugin manager
+---- gm_conf_init ()
+---- [Gettext init]
+---- gnome_program_init ()
+---- [IF BONOBO] bonobo_component_init ()
+---- PTrace::Initialise ()
load plugins
+---- GnomeMeeting::Process ()->BuildGUI ()
  +---- gnomemeeting_addressbook_init ()
  +---- gnomemeeting_stock_icons_init ()
  +---- [Create the windows]
  +---- [IF DBUS] gnomemeeting_dbus_component_new ();
  +---- gm_statusicon_new ()
(1)
+---- GnomeMeeting::Process ()->DetectInterfaces ()
+---- GnomeMeeting::Process ()->Init ()
+---- GnomeMeeting::Process ()->DetectCodecs ()
+---- gnomemeeting_conf_init ()
+---- [UI init]
+---- gtk_main ()

Comments so far?

Loading the plugins still seems a bit early. Maybe it should go to (1)?

Difficult question.

We certainly have to load plugins after gm_conf_init.

We certainly have to load plugins before we detect codecs/devices/interfaces, because we already have experimental gstreamer device plugins and hope we'll have gstreamer codec plugins and a hal plugin to detect interfaces.

It's probably better if the endpoint exists before plugins are loaded, because they'll want to interact with it.

Not an answer, I know, but hints :-/

Snark



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]