summaryrefslogtreecommitdiffstats
path: root/src/main.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/main.cpp')
-rw-r--r--src/main.cpp168
1 files changed, 80 insertions, 88 deletions
diff --git a/src/main.cpp b/src/main.cpp
index 875cfbd..1a8f5de 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -1,88 +1,80 @@
-/******************************************************************************
- * Copyright (C) 2018 Alejandro Colomar Andrés *
- ******************************************************************************/
-
-
-/******************************************************************************
- ******* headers **************************************************************
- ******************************************************************************/
-/* Standard C ----------------------------------------------------------------*/
- /* getchar() */
- #include <cstdio>
-
-/* libalx --------------------------------------------------------------------*/
- #include "alx_ncur.hpp"
-
-/* Project -------------------------------------------------------------------*/
- /* about_init() & print_cpright() */
- #include "about.hpp"
- #include "img_iface.hpp"
- #include "menu_iface.hpp"
- #include "user_iface.hpp"
- #include "parser.hpp"
- #include "save.hpp"
-
-
-/******************************************************************************
- ******* static functions *****************************************************
- ******************************************************************************/
-static void init_all (int *argc, char *(*argv[]));
-static void cleanup (void);
-
-
-/******************************************************************************
- ******* main *****************************************************************
- ******************************************************************************/
-int main (int argc, char *argv[])
-{
- init_all(&argc, &argv);
-
- /* Print copyright () and wait for any key to continue */
- print_share_file(SHARE_COPYRIGHT);
- getchar();
-
- /* Menu () */
- menu_iface();
-
- cleanup();
-
- return 0;
-}
-
-
-/******************************************************************************
- ******* static functions *****************************************************
- ******************************************************************************/
-static void init_all (int *argc, char *(*argv[]))
-{
- /* Init curses */
- alx_start_curses();
- alx_pause_curses();
-
- /* Init modules */
- about_init();
- save_init();
-
- /* Modes */
- menu_iface_mode = MENU_IFACE_TUI;
- user_iface_mode = USER_IFACE_TUI;
- user_iface_log.visible = 2;
-
- /* Parse command line options */
- parser(*argc, *argv);
-}
-
-static void cleanup (void)
-{
- /* Clean img buffers */
- img_iface_cleanup_main();
-
- /* End curses */
- alx_resume_curses();
- alx_end_curses();
-}
-
-
-/******************************************************************************
- ******* end of file **********************************************************
- ******************************************************************************/
+/******************************************************************************
+ * Copyright (C) 2018 Alejandro Colomar Andrés *
+ * SPDX-License-Identifier: GPL-2.0-only *
+ ******************************************************************************/
+
+
+/******************************************************************************
+ ******* headers **************************************************************
+ ******************************************************************************/
+#include <cstdio>
+
+#include "libalx/base/stdio/wait.hpp"
+#include "libalx/extra/ncurses/common.hpp"
+
+#include "vision-artificial/about/about.hpp"
+#include "vision-artificial/image/iface.hpp"
+#include "vision-artificial/menu/iface.hpp"
+#include "vision-artificial/menu/parse.hpp"
+#include "vision-artificial/save/save.hpp"
+#include "vision-artificial/user/iface.hpp"
+
+
+/******************************************************************************
+ ******* static functions *****************************************************
+ ******************************************************************************/
+static void init (int *argc, char *(*argv[]));
+static void deinit (void);
+
+
+/******************************************************************************
+ ******* main *****************************************************************
+ ******************************************************************************/
+int main (int argc, char *argv[])
+{
+
+ init(&argc, &argv);
+
+ print_share_file(SHARE_COPYRIGHT);
+ alx_wait4enter();
+
+ menu_iface();
+
+ deinit();
+
+ return 0;
+}
+
+
+/******************************************************************************
+ ******* static functions *****************************************************
+ ******************************************************************************/
+static void init (int *argc, char *(*argv[]))
+{
+
+ alx_ncurses_init();
+ alx_ncurses_pause();
+
+ about_init();
+ save_init();
+
+ menu_iface_mode = MENU_IFACE_TUI;
+ user_iface_mode = USER_IFACE_TUI;
+ user_iface_log.visible = 2;
+
+ parse(*argc, *argv);
+}
+
+static void deinit (void)
+{
+
+ img_iface_deinit();
+
+ alx_ncurses_resume();
+ alx_ncurses_deinit();
+}
+
+
+/******************************************************************************
+ ******* end of file **********************************************************
+ ******************************************************************************/