Integrate flite into aoview directly. Fix great circle computation.
[fw/altos] / aoview / aoview_main.c
index e2164e05ec166037ad5b534e48fabaab47532b37..36a82e0e1212dc3da35006dc8e42708266495c51 100644 (file)
 
 #include "aoview.h"
 
+static const char aoview_glade[] = {
+#include "aoview_glade.h"
+};
+
 static void usage(void) {
        printf("aoview [--device|-d device_file]");
        exit(1);
@@ -27,6 +31,8 @@ static void destroy_event(GtkWidget *widget, gpointer data)
        gtk_main_quit();
 }
 
+extern int _Xdebug;
+
 int main(int argc, char **argv)
 {
        GladeXML *xml = NULL;
@@ -36,12 +42,13 @@ int main(int argc, char **argv)
 
        static struct option long_options[] = {
                { "device", 1, 0, 'd'},
+               { "sync", 0, 0, 's'},
                { 0, 0, 0, 0 }
        };
        for (;;) {
                int c, temp;
 
-               c = getopt_long_only(argc, argv, "d:", long_options, &temp);
+               c = getopt_long_only(argc, argv, "sd:", long_options, &temp);
                if (c == -1)
                        break;
 
@@ -49,15 +56,20 @@ int main(int argc, char **argv)
                case 'd':
                        device = optarg;
                        break;
+               case 's':
+                       _Xdebug = 1;
+                       break;
                default:
                        usage();
                }
        }
 
+       g_thread_init(NULL);
        gtk_init(&argc, &argv);
        glade_init();
 
-       xml = glade_xml_new("aoview.glade", NULL, NULL);
+       xml = glade_xml_new_from_buffer(aoview_glade, sizeof (aoview_glade), NULL, NULL);
+
        /* connect the signals in the interface */
        glade_xml_signal_autoconnect(xml);
 
@@ -72,14 +84,26 @@ int main(int argc, char **argv)
        assert(about_dialog);
        gtk_about_dialog_set_version(about_dialog, AOVIEW_VERSION);
 
+       aoview_voice_init(xml);
+
        aoview_dev_dialog_init(xml);
 
        aoview_state_init(xml);
 
+       aoview_file_init(xml);
+
        aoview_log_init(xml);
 
        aoview_table_init(xml);
 
+       aoview_eeprom_init(xml);
+
+       aoview_replay_init(xml);
+
+       aoview_label_init(xml);
+
+       aoview_voice_speak("rocket flight monitor ready\n");
+
        gtk_main();
 
        return 0;