2008-04-01 21:30:41 +00:00
|
|
|
#include "ecdb.h"
|
|
|
|
|
2008-04-07 01:04:15 +00:00
|
|
|
/* Global Variables */
|
|
|
|
int ECDB_DRIVE_ACTION_FINISHED = 0;
|
|
|
|
int ECDB_DRIVE_ACTION_BEGUN = 0;
|
|
|
|
int ECDB_DRIVE_ACTION_UPDATE = 0;
|
|
|
|
|
2008-04-01 21:30:41 +00:00
|
|
|
Ecdb_Main *em;
|
|
|
|
int ecdb_setup();
|
|
|
|
|
|
|
|
int
|
|
|
|
main(int argc, char **argv)
|
|
|
|
{
|
|
|
|
int i;
|
2008-04-07 20:40:30 +00:00
|
|
|
int ret = 0;
|
2008-05-21 01:01:37 +00:00
|
|
|
Ecdb_Source *src;
|
2008-04-01 21:30:41 +00:00
|
|
|
|
2008-04-07 01:04:15 +00:00
|
|
|
if (!ecore_init())
|
|
|
|
{
|
|
|
|
printf("Cannot initialize Ecore!\n");
|
|
|
|
return 1;
|
|
|
|
}
|
|
|
|
|
|
|
|
if (!ecore_file_init())
|
|
|
|
{
|
|
|
|
printf("Cannot initialize Ecore_File!\n");
|
2008-04-07 20:40:30 +00:00
|
|
|
ret = 1;
|
|
|
|
goto SHUTDOWN;
|
2008-04-07 01:04:15 +00:00
|
|
|
}
|
|
|
|
|
2008-04-01 21:30:41 +00:00
|
|
|
if (!ecdb_setup())
|
|
|
|
{
|
|
|
|
printf("Setup failed\n");
|
2008-04-07 20:40:30 +00:00
|
|
|
ret = 1;
|
|
|
|
goto SHUTDOWN;
|
2008-04-01 21:30:41 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
ecdb_print_drive_info();
|
|
|
|
ecdb_burn_init();
|
|
|
|
|
2008-05-15 00:14:33 +00:00
|
|
|
/* Start testing */
|
|
|
|
Ecdb_Burn_Project *proj;
|
|
|
|
proj = ecdb_burn_project_new();
|
2008-04-01 21:30:41 +00:00
|
|
|
|
|
|
|
i = 1;
|
|
|
|
while ((i < argc) && (argv))
|
|
|
|
{
|
2008-05-21 01:01:37 +00:00
|
|
|
if (ecore_file_exists(argv[i]))
|
|
|
|
{
|
|
|
|
if (ecore_file_is_dir(argv[i]))
|
|
|
|
ret = 1;
|
|
|
|
src = ecdb_source_new();
|
|
|
|
ecdb_source_data_set(src, argv[i], ret);
|
|
|
|
ecdb_source_child_append(proj->files, src);
|
|
|
|
ret = 0;
|
|
|
|
}
|
2008-04-01 21:30:41 +00:00
|
|
|
i++;
|
|
|
|
}
|
2008-05-15 00:14:33 +00:00
|
|
|
proj->publisher_id = proj->data_preparer_id = proj->system_id =
|
|
|
|
proj->application_id = proj->copywrite_id =
|
|
|
|
proj->abstract_id = proj->biblio_id = "ecdb";
|
2008-04-07 20:40:30 +00:00
|
|
|
|
2008-05-15 00:14:33 +00:00
|
|
|
if (!ecdb_aquire_drive(ECDB_PROJECT(proj), 0))
|
2008-04-07 20:40:30 +00:00
|
|
|
{
|
|
|
|
printf("Couldn't grab drive!\n");
|
|
|
|
ret = 1;
|
|
|
|
goto SHUTDOWN;
|
|
|
|
}
|
2008-04-07 01:04:15 +00:00
|
|
|
|
2008-05-15 00:14:33 +00:00
|
|
|
if (!ecdb_burn_project(proj))
|
2008-04-07 01:04:15 +00:00
|
|
|
{
|
|
|
|
printf("Burn was unsuccessful\n");
|
2008-04-07 20:40:30 +00:00
|
|
|
ret = 1;
|
|
|
|
goto SHUTDOWN;
|
2008-04-07 01:04:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
ecore_main_loop_begin();
|
2008-04-01 21:30:41 +00:00
|
|
|
|
|
|
|
/* End testing */
|
2008-04-07 20:40:30 +00:00
|
|
|
|
|
|
|
SHUTDOWN:
|
2008-04-01 21:30:41 +00:00
|
|
|
burn_finish();
|
2008-05-19 05:04:00 +00:00
|
|
|
iso_finish();
|
2008-04-07 01:04:15 +00:00
|
|
|
ecore_file_shutdown();
|
2008-05-21 01:38:44 +00:00
|
|
|
ecore_shutdown();
|
2008-04-07 01:04:15 +00:00
|
|
|
printf("Program Done\n");
|
2008-04-07 20:40:30 +00:00
|
|
|
return ret;
|
2008-04-01 21:30:41 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
int
|
|
|
|
ecdb_setup(void)
|
|
|
|
{
|
|
|
|
em = NULL;
|
|
|
|
em = calloc(1, sizeof(Ecdb_Main));
|
|
|
|
em->drives = NULL;
|
|
|
|
em->projects = ecore_list_new();
|
|
|
|
|
2008-04-07 01:04:15 +00:00
|
|
|
ECDB_DRIVE_ACTION_FINISHED = ecore_event_type_new();
|
|
|
|
ECDB_DRIVE_ACTION_BEGUN = ecore_event_type_new();
|
|
|
|
ECDB_DRIVE_ACTION_UPDATE = ecore_event_type_new();
|
2008-04-08 01:45:30 +00:00
|
|
|
ecdb_image_init();
|
2008-04-07 01:04:15 +00:00
|
|
|
|
|
|
|
ecore_event_handler_add(ECORE_EVENT_SIGNAL_EXIT, ecdb_shutdown,
|
|
|
|
NULL);
|
|
|
|
|
2008-04-01 21:30:41 +00:00
|
|
|
if (!ecdb_aquire_drive_info())
|
|
|
|
{
|
|
|
|
printf("Aquiring drives failed!\n");
|
2008-05-19 05:00:55 +00:00
|
|
|
return FALSE;
|
2008-04-01 21:30:41 +00:00
|
|
|
}
|
|
|
|
|
2008-05-19 05:00:55 +00:00
|
|
|
return TRUE;
|
2008-04-01 21:30:41 +00:00
|
|
|
}
|
|
|
|
|