示例#1
0
文件: all_test.cpp 项目: koudis/robot
int main(int argc, char** argv) {
  if (init_systems())
    return -1;

  main_poll();

  return shut_systems();
}
示例#2
0
文件: darxencli.c 项目: darxen/Darxen
int
main (int argc, char *argv[])
{
	GError* error = NULL;
	GOptionContext *context;
	GOptionGroup* groupMain;
	GOptionGroup* groupSearch;
	GOptionGroup* groupPoll;


	g_type_init();

	context = g_option_context_new("\nArchive, Download, Parse, and render NEXRAD data");

	groupMain = g_option_group_new("Main", "", "", NULL, NULL);
	g_option_group_add_entries(groupMain, entriesMain);
	g_option_context_add_group(context, groupMain);
	g_option_context_set_ignore_unknown_options(context, TRUE);

	if (!g_option_context_parse(context, &argc, &argv, &error))
	{
		g_error("Failed to parse cli options (phase 1): %s", error->message);
		return 1;
	}

	if (!chrOp)
	{
		g_error("Operation required");
		return 1;
	}

	g_option_context_set_ignore_unknown_options(context, FALSE);

	groupSearch = g_option_group_new("Search", "Search through archived data", "Search through archived data", NULL, NULL);
	g_option_group_add_entries(groupSearch, entriesSearch);

	groupPoll = g_option_group_new("Poll", "Poll data from darxend", "Continually polls for data, archiving it in the process", NULL, NULL);
	g_option_group_add_entries(groupPoll, entriesPoll);

	if (!strcasecmp(chrOp, "search"))
	{
		g_option_context_add_group(context, groupSearch);
	}
	else if (!strcasecmp(chrOp, "poll"))
	{
		g_option_context_add_group(context, groupPoll);
	}
//	else if (!strcasecmp(chrOp, "render"))
//	{
//
//	}
//	else if (!strcasecmp(chrOp, "disp"))
//	{
//
//	}
	else
	{
		printf("Invalid operation: %s\n", chrOp);
	}

	if (!g_option_context_parse(context, &argc, &argv, &error))
	{
		g_error("Failed to parse cli options(phase 2): %s", error->message);
		return 1;
	}

	int res;

	if (!strcasecmp(chrOp, "search"))
	{
		res = main_search();
	}
	else if (!strcasecmp(chrOp, "poll"))
	{
		res = main_poll();
	}
//	else if (!strcasecmp(chrOp, "render"))
//	{
//
//	}
//	else if (!strcasecmp(chrOp, "disp"))
//	{
//
//	}

	//g_option_context_add_main_entries(context, entries, NULL);
	//g_option_context_set_ignore_unknown_options(context, TRUE);

	g_option_group_free(groupSearch);
	g_option_group_free(groupPoll);
	g_option_context_free(context);

	return res;
}