From f5da688c486011162959484ce07059e45d3a2e54 Mon Sep 17 00:00:00 2001 From: Christian Thaeter Date: Thu, 6 Nov 2008 11:25:37 +0100 Subject: [PATCH] some more bits towards a lumiera main --- src/lumiera/Makefile.am | 4 ++-- src/lumiera/lumiera.c | 28 ++++++++++++++++++++++++++-- src/lumiera/lumiera.h | 3 +++ src/lumiera/lumiera_init.c | 7 +++++++ 4 files changed, 38 insertions(+), 4 deletions(-) diff --git a/src/lumiera/Makefile.am b/src/lumiera/Makefile.am index b196c3ca1..8098273ce 100644 --- a/src/lumiera/Makefile.am +++ b/src/lumiera/Makefile.am @@ -53,9 +53,9 @@ liblumierainit_a_SOURCES = \ bin_PROGRAMS += lumiera -lumiera_CPPFLAGS = $(AM_CPPFLAGS) +lumiera_CPPFLAGS = $(AM_CPPFLAGS) -DLUMIERA_CONFIG_PATH="\"$(pkgdatadir)/config\"" lumiera_CFLAGS = $(AM_CFLAGS) -std=gnu99 -Wextra -Wall -Werror -lumiera_LDADD = liblumierainit.a liblumieraconfig.a liblumieraplugin.a liblumiera.a $(LUMIERA_PLUGIN_LIBS) $(NOBUGMT_LUMIERA_LIBS) +lumiera_LDADD = liblumieraplugin.a liblumieraconfig.a liblumierainit.a liblumiera.a $(LUMIERA_PLUGIN_LIBS) $(NOBUGMT_LUMIERA_LIBS) lumiera_SOURCES = \ $(lumiera_srcdir)/lumiera.c diff --git a/src/lumiera/lumiera.c b/src/lumiera/lumiera.c index 64bf9de89..295e81052 100644 --- a/src/lumiera/lumiera.c +++ b/src/lumiera/lumiera.c @@ -24,6 +24,10 @@ //TODO: Lumiera header includes// #include "lumiera/lumiera.h" +#include "lumiera/interface.h" +#include "lumiera/interfaceregistry.h" +#include "lumiera/plugin.h" +#include "lumiera/config.h" //TODO: internal/static forward declarations// @@ -31,6 +35,11 @@ //TODO: System includes// #include +#ifndef LUMIERA_CONFIG_PATH +#error LUMIERA_CONFIG_PATH not defined +#endif + + /** * @file * @@ -41,10 +50,25 @@ int main (int argc, char** argv) { - lumiera_init (); (void) argc; (void) argv; - printf ("Lumiera is alive ...\n"); + lumiera_init (); + + TODO ("commandline parser"); + lumiera_config_init (LUMIERA_CONFIG_PATH); + + lumiera_interfaceregistry_init (); + TODO ("plugindb support instead loading all plugins at once"); + lumiera_plugin_discover (lumiera_plugin_load, lumiera_plugin_register); + + TRACE (lumiera, "Lumiera is alive"); + + TODO ("video editing"); + + TRACE (lumiera, "initiating shutdown sequence"); + lumiera_interfaceregistry_destroy (); + lumiera_config_destroy (); + lumiera_shutdown (); } diff --git a/src/lumiera/lumiera.h b/src/lumiera/lumiera.h index cf29bf65f..c262cc9e5 100644 --- a/src/lumiera/lumiera.h +++ b/src/lumiera/lumiera.h @@ -48,6 +48,9 @@ NOBUG_DECLARE_FLAG (lumiera); void lumiera_init (void); +void +lumiera_shutdown (void); + #endif /* diff --git a/src/lumiera/lumiera_init.c b/src/lumiera/lumiera_init.c index 7107363ef..8476d69a7 100644 --- a/src/lumiera/lumiera_init.c +++ b/src/lumiera/lumiera_init.c @@ -49,7 +49,14 @@ lumiera_init (void) NOBUG_INIT_FLAG (all); NOBUG_INIT_FLAG (lumiera_all); NOBUG_INIT_FLAG (lumiera); + TRACE (lumiera, "initializing"); +} + +void +lumiera_shutdown (void) +{ + TRACE (lumiera, "shutdown"); }