当前位置: 首页>>代码示例>>C++>>正文


C++ bu_getopt函数代码示例

本文整理汇总了C++中bu_getopt函数的典型用法代码示例。如果您正苦于以下问题:C++ bu_getopt函数的具体用法?C++ bu_getopt怎么用?C++ bu_getopt使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。


在下文中一共展示了bu_getopt函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: pars_Argv

/* p a r s _ A r g v ()
 */
static int
pars_Argv(int argc, char **argv)
{
    int c;

    while ((c = bu_getopt(argc, argv, "hF:s:S:w:W:n:N:")) != -1) {
	switch (c) {
	    case 'h' :
		scr_width = scr_height = 1024;
		break;
	    case 'F':
		framebuffer = bu_optarg;
		break;
	    case 'S':
	    case 's':
		/* square file size */
		scr_height = scr_width = atoi(bu_optarg);
		break;
	    case 'w':
	    case 'W':
		scr_width = atoi(bu_optarg);
		break;
	    case 'n':
	    case 'N':
		scr_height = atoi(bu_optarg);
		break;
	    case '?' :
		return 0;
	}
    }
    if (argv[bu_optind] != NULL)
	flavor = atoi(argv[bu_optind]);
    return 1;
}
开发者ID:cogitokat,项目名称:brlcad,代码行数:36,代码来源:fbcmap.c

示例2: get_args

int
get_args(int argc, register char **argv)
{
    register int c;

    while ( (c = bu_getopt( argc, argv, "b:f:l:" )) != EOF )  {
	switch ( c )  {
	    case 'b':
		bytes_per_sample = atoi(bu_optarg);
		break;
	    case 'f':
		file_name = bu_optarg;
		break;
	    case 'l':
		file_length = atoi(bu_optarg);
		break;
	    default:		/* '?' */
		return(0);
	}
    }

    if ( argc > ++bu_optind )
	(void)fprintf( stderr, "pixautosize: excess argument(s) ignored\n" );

    return(1);		/* OK */
}
开发者ID:cciechad,项目名称:brlcad,代码行数:26,代码来源:pixautosize.c

示例3: get_args

/* code to read command line arguments*/
int
get_args(int argc, char **argv)
{
    int c;
    double scan;

    estimate_f = 0;
    while ((c=bu_getopt(argc, argv, OPT_STR)) != -1) {
	switch (c) {
	    case 'b':
		sscanf(bu_optarg, "%lf", &scan);
		max_bank = scan; /* double to fastf_t */
		estimate_f = 1;
		break;
	    case 'f':
		sscanf(bu_optarg, "%lf", &scan);
		magic_factor = scan; /* double to fastf_t */
		magic_factor *= 0.001; /* to put factors in a more reasonable range */
		break;
	    case 'p':
		sscanf(bu_optarg, "%d", &print_int);
		break;
	    case 'r':
		loop = 0;
		break;
	    case 's':
		sscanf(bu_optarg, "%lf", &scan);
		desired_step = scan; /* double to fastf_t */
		break;
	    default:
		return 0;
	}
    }
    return 1;
}
开发者ID:behollis,项目名称:brlcad-svn-rev65072-gsoc2015,代码行数:36,代码来源:anim_fly.c

示例4: parse_args

/** @if no
 *	P A R S E _ A R G S
 * @endif
 *	@brief Parse command line flags.
 *
 *	This routine handles parsing of all command line options.
 *
 *	@param ac count of arguments
 *	@param av array of pointers to null-terminated strings
 *	@return index into av of first argument past options (new ac value)
 */
int parse_args(int ac, char *av[])
{
    int  c;
    char *strrchr();
    char *tmp_basename = NULL;

    /* Turn off bu_getopt's error messages */
    bu_opterr = 0;

    /* get all the option flags from the command line */
    while ((c=bu_getopt(ac, av, options)) != -1) {
	switch (c) {
	    case 'd':
		debug = strtol(bu_optarg, NULL, 16);
		break;
	    case '?':
	    case 'h':
	    default:
		tmp_basename = bu_basename(av[0]);
		usage(tmp_basename, "Bad or help flag specified\n");
		bu_free(tmp_basename, "tmp_basename free");
		break;
	}
    }

    return bu_optind;
}
开发者ID:cogitokat,项目名称:brlcad,代码行数:38,代码来源:walk_example.c

示例5: get_args

int get_args(int argc, char **argv)
{

    int c;

    mode = QUATERNION; /* default */
    units = DEGREES;

    while ( (c=bu_getopt(argc, argv, OPT_STR)) != EOF) {
	switch (c) {
	    case 'y':
		mode = YPR;
		break;
	    case 'z':
		mode = XYZ;
		break;
	    case 'q':
		mode = QUATERNION;
		break;
	    case 'r':
		units = RADIANS;
		break;
	    default:
		fprintf(stderr, "Unknown option: -%c\n", c);
		return(0);
	}
    }
    return(1);
}
开发者ID:cciechad,项目名称:brlcad,代码行数:29,代码来源:anim_keyread.c

示例6: main

int
main(int argc, char **argv)
{
    int c;
    FBIO *fbp;

    while ((c = bu_getopt(argc, argv, "F:h?")) != -1) {
	switch (c) {
	    case 'F':
		framebuffer = bu_optarg;
		break;
	    default:		/* '?' */
		(void)fputs(usage, stderr);
		return 1;
	}
    }
    if (argc > ++bu_optind) {
	fprintf(stderr, "fbfree: excess argument(s) ignored\n");
    }

    if ((fbp = fb_open(framebuffer, 0, 0)) == FBIO_NULL) {
	fprintf(stderr, "fbfree: Can't open frame buffer\n");
	return 1;
    }
    return fb_free(fbp);
}
开发者ID:kanzure,项目名称:brlcad,代码行数:26,代码来源:fbfree.c

示例7: get_args

int
get_args(int argc, register char **argv)
{
    register int c;

    while ( (c = bu_getopt( argc, argv, "hiF:X:Y:s:w:n:" )) != EOF )  {
	switch ( c )  {
	    case 'h':
		/* high-res */
		height = width = 1024;
		break;
	    case 'i':
		inverse = 1;
		break;
	    case 'F':
		framebuffer = bu_optarg;
		break;
	    case 'X':
		scr_xoff = atoi(bu_optarg);
		break;
	    case 'Y':
		scr_yoff = atoi(bu_optarg);
		break;
	    case 's':
		/* square size */
		height = width = atoi(bu_optarg);
		break;
	    case 'w':
		width = atoi(bu_optarg);
		break;
	    case 'n':
		height = atoi(bu_optarg);
		break;

	    default:		/* '?' */
		return(0);
	}
    }

    if ( bu_optind >= argc ) {
	if ( isatty(fileno(stdout)) )
	    return(0);
	file_name = "-";
	outfp = stdout;
    } else {
	file_name = argv[bu_optind];
	if ( (outfp = fopen(file_name, "wb")) == NULL )  {
	    (void)fprintf( stderr,
			   "fb-bw: cannot open \"%s\" for writing\n",
			   file_name );
	    return(0);
	}
    }

    if ( argc > ++bu_optind )
	(void)fprintf( stderr, "fb-bw: excess argument(s) ignored\n" );

    return(1);		/* OK */
}
开发者ID:cciechad,项目名称:brlcad,代码行数:59,代码来源:fb-bw.c

示例8: get_args

int
get_args(int argc, char **argv)
{
    int c;

    while ((c = bu_getopt(argc, argv, "chiF:s:w:n:")) != -1) {
	switch (c) {
	    case 'c':
		crunch = 1;
		break;
	    case 'h':
		/* high-res */
		screen_height = screen_width = 1024;
		break;
	    case 'i':
		inverse = 1;
		break;
	    case 'F':
		framebuffer = bu_optarg;
		break;
	    case 's':
		/* square size */
		screen_height = screen_width = atoi(bu_optarg);
		break;
	    case 'w':
		screen_width = atoi(bu_optarg);
		break;
	    case 'n':
		screen_height = atoi(bu_optarg);
		break;

	    default:		/* '?' */
		return 0;
	}
    }

    if (bu_optind >= argc) {
	if (isatty(fileno(stdout)))
	    return 0;
	file_name = "-";
	outfp = stdout;
    } else {
	file_name = argv[bu_optind];
	if ((outfp = fopen(file_name, "wb")) == NULL) {
	    fprintf(stderr,
			  "fb-pix: cannot open \"%s\" for writing\n",
			  file_name);
	    return 0;
	}
	(void)bu_fchmod(fileno(outfp), 0444);
    }

    if (argc > ++bu_optind)
	fprintf(stderr, "fb-pix: excess argument(s) ignored\n");

    return 1;		/* OK */
}
开发者ID:cogitokat,项目名称:brlcad,代码行数:57,代码来源:fb-pix.c

示例9: get_args

int
get_args(int argc, register char **argv)
{
    register int c;

    while ( (c = bu_getopt( argc, argv, "hvF:s:w:n:S:W:N:p:" )) != EOF )  {
	switch ( c )  {
	    case 'v':
		verbose = 1;
		break;
	    case 'h':
		/* high-res */
		height = width = 1024;
		break;
	    case 'F':
		framebuffer = bu_optarg;
		break;
	    case 's':
	    case 'S':
		height = width = atoi(bu_optarg);
		break;
	    case 'w':
	    case 'W':
		width = atoi(bu_optarg);
		break;
	    case 'n':
	    case 'N':
		height = atoi(bu_optarg);
		break;
	    case 'p':
		port = atoi(bu_optarg);
		port_set = 1;
		break;

	    default:		/* '?' */
		return(0);
	}
    }
    /* If no "-p port", port comes from 1st extra */
    if ( (bu_optind < argc) && (port_set == 0) ) {
	port = atoi(argv[bu_optind++]);
	port_set = 1;
    }
    /* If no "-F framebuffer", fb comes from 2nd extra */
    if ( (bu_optind < argc) && (framebuffer == NULL) ) {
	framebuffer = argv[bu_optind++];
    }
    if ( argc > bu_optind )
	return(0);	/* print usage */

    return(1);		/* OK */
}
开发者ID:cciechad,项目名称:brlcad,代码行数:52,代码来源:fbserv.c

示例10: main

int
main(int argc, char **argv)
{
    int c = 0;
    int in_num = 0;
    int format = 0; /* 0 = XML, 1 = HTML */
    int list = 0;
    char outfile[MAXPATHLEN] = "attributes.xml";
    char xref_id[MAXPATHLEN] = "auto_attributes";
    const char *usage_str = "[-o output file] [-x xref id] [-f format number (0 = XML, 1 = HTML)] [-l]";

    while ((c=bu_getopt(argc, argv, "f:lo:x:")) != -1) {
	switch (c) {
	    case 'o' :
		memset(outfile, 0, MAXPATHLEN);
		bu_strlcpy(outfile, bu_optarg, MAXPATHLEN);
		break;
	    case 'x' :
		memset(xref_id, 0, MAXPATHLEN);
		bu_strlcpy(xref_id, bu_optarg, MAXPATHLEN);
		break;
	    case 'f' :
		sscanf(bu_optarg, "%d", &in_num);
		format = in_num;
		break;
	    case 'l' :
		list = 1;
		break;
	    default:
		bu_log("%s: %s\n", argv[0], usage_str);
		return -1;
	}
    }

    switch (format) {
	case 0:
	    if (list) {
		gen_attr_xml_list(outfile, xref_id);
	    } else {
		gen_attr_xml_table(outfile, xref_id);
	    }
	    break;
	case 1:
	    break;
	default:
	    bu_log("Error - unknown format %d\n", format);
	    return -1;
    }

    return 0;
}
开发者ID:behollis,项目名称:brlcad-svn-rev65072-gsoc2015,代码行数:51,代码来源:gen-attributes-file.cpp

示例11: GetArgs

static int
GetArgs(int argc, const char *argv[])			/* process command arguments */
    /* argument count */
    /* argument strings */
{
    static int iflag = 0;	/* set if "-i" option found */
    static int oflag = 0;	/* set if "-o" option found */
    int c;		/* option letter */

    bu_optind = 1;
    while ((c = bu_getopt(argc, (char * const *)argv, "i:o:h?")) != -1)
	switch (c) {
	    case 'i':
		if (iflag) {
		    printf("cad_parea: too many -i options\n");
		    return 0;
		}
		iflag = 1;

		if (!BU_STR_EQUAL(bu_optarg, "-")
		    && freopen(bu_optarg, "r", stdin) == NULL
		    ) {
		    printf("cad_parea: can't open \"%s\" for reading\n", bu_optarg);
		    return 0;
		}
		break;

	    case 'o':
		if (oflag) {
		    printf("cad_parea: too many -o options\n");
		    return 0;
		}
		oflag = 1;

		if (!BU_STR_EQUAL(bu_optarg, "-")
		    && freopen(bu_optarg, "w", stdout) == NULL
		    ) {
		    printf("cad_parea: can't open \"%s\" for writing\n", bu_optarg);
		    return 0;
		}
		break;

	    default:
		Usage();	/* print usage message */
		return 0;
	}

    return 1;
}
开发者ID:kanzure,项目名称:brlcad,代码行数:49,代码来源:cad_parea.c

示例12: parse_args

int
parse_args (int ac, char *av[], struct beset_options *opts)
{
    int c;

    bu_setprogname(av[0]);
    /* handle options */
    bu_opterr = 0;
    bu_optind = 0;
    av++; ac--;

    while ((c=bu_getopt(ac, av, OPTIONS)) != -1) {
	switch (c) {
	    case 'm':
		opts->mut_rate = atoi(bu_optarg);
		continue;
	    case 'c':
		opts->cross_rate = atoi(bu_optarg);
		continue;
	    case 'x':
		sscanf(bu_optarg, "%x", (unsigned int *)&RTG.debug );
		continue;
	    case 'p':
		opts->pop_size = atoi(bu_optarg);
		continue;
	    case 'g':
		opts->gens = atoi(bu_optarg);
		continue;
	    case 'r':
		opts->res = atoi(bu_optarg);
		continue;
	    case 'u':
		opts->keep_upper = atoi(bu_optarg);
		continue;
	    case 'l':
		opts->kill_lower = atoi(bu_optarg);
		continue;
	    default:
		fprintf(stderr, "Unrecognized option: -%c\n", c);
		usage();
	}
    }
    opts->keep_upper *= opts->pop_size/100.0;
    opts->kill_lower *= opts->pop_size/100.0;
    return bu_optind;
}
开发者ID:kanzure,项目名称:brlcad,代码行数:46,代码来源:beset.c

示例13: main

/**
 * main application for both the client and server
 */
int
main(int argc, char *argv[]) {
    const char * const argv0 = argv[0];
    int c;
    int port = 2000;

    if (argc > 2) {
	usage("ERROR: Incorrect number of arguments\n", argv[0]);
    }

    /* process the command-line arguments after the application name */
    while ((c = bu_getopt(argc, argv, "p:P:hH")) != -1) {
	switch (c) {
	    case 'p':
	    case 'P':
		port = atoi(bu_optarg);
		break;
	    case 'h':
	    case 'H':
		/* help */
		usage(NULL, argv0);
		break;
	    default:
		usage("ERROR: Unknown argument\n", argv0);
	}
    }

    argc -= bu_optind;
    argv += bu_optind;

    if (argc > 0) {
	usage("ERROR: Unexpected extra server arguments\n", argv0);
    }

    /* ignore broken pipes, on platforms where we have SIGPIPE */
#ifdef SIGPIPE
    (void)signal(SIGPIPE, SIG_IGN);
#endif

    /* fire up the server */
    bu_log("Listening on port %d\n", port);
    run_server(port);

    return 0;
}
开发者ID:cogitokat,项目名称:brlcad,代码行数:48,代码来源:server.c

示例14: get_args

int
get_args(int argc, register char **argv)
{
    register int c;

    while ( (c = bu_getopt( argc, argv, "efshF:S:W:N:" )) != EOF )  {
	switch ( c )  {
	    case 'e':
		mode = M_EIA;
		break;
	    case 's':
		mode = M_SMPTE;
		break;
	    case 'f':
		mode = M_FCC;
		break;
	    case 'h':
		/* high-res */
		scr_height = scr_width = 1024;
		break;
	    case 'F':
		framebuffer = bu_optarg;
		break;
	    case 'S':
		scr_height = scr_width = atoi(bu_optarg);
		break;
	    case 'W':
		scr_width = atoi(bu_optarg);
		break;
	    case 'N':
		scr_height = atoi(bu_optarg);
		break;

	    default:		/* '?' */
		return(0);
	}
    }

    if ( argc > ++bu_optind )
	(void)fprintf( stderr, "fbcbars: excess argument(s) ignored\n" );

    return(1);		/* OK */
}
开发者ID:cciechad,项目名称:brlcad,代码行数:43,代码来源:fbcbars.c

示例15: dm_processOptions

int
dm_processOptions(dm *dmp, struct bu_vls *init_proc_vls, int argc, char **argv)
{
    int c;

    bu_optind = 0;	 /* re-init bu_getopt */
    bu_opterr = 0;
    while ((c = bu_getopt(argc, argv, "N:S:W:s:d:i:n:t:")) != -1) {
	switch (c) {
	    case 'N':
		dmp->dm_height = atoi(bu_optarg);
		break;
	    case 'S':
	    case 's':
		dmp->dm_width = dmp->dm_height = atoi(bu_optarg);
		break;
	    case 'W':
		dmp->dm_width = atoi(bu_optarg);
		break;
	    case 'd':
		bu_vls_strcpy(&dmp->dm_dName, bu_optarg);
		break;
	    case 'i':
		bu_vls_strcpy(init_proc_vls, bu_optarg);
		break;
	    case 'n':
		if (*bu_optarg != '.')
		    bu_vls_printf(&dmp->dm_pathName, ".%s", bu_optarg);
		else
		    bu_vls_strcpy(&dmp->dm_pathName, bu_optarg);
		break;
	    case 't':
		dmp->dm_top = atoi(bu_optarg);
		break;
	    default:
		bu_log("dm_processOptions: option '%c' unknown\n", bu_optopt);
		break;
	}
    }

    return bu_optind;
}
开发者ID:behollis,项目名称:brlcad-svn-rev65072-gsoc2015,代码行数:42,代码来源:options.c


注:本文中的bu_getopt函数示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。