Ejemplo n.º 1
0
void op_par_loop_8 ( void (*subroutineName)(char *, char *, char *, char *, char *, char *, char *, char *), op_set set,
					op_dat dat0, int itemSel0, op_map map0, op_access access0,
					op_dat dat1, int itemSel1, op_map map1, op_access access1,
					op_dat dat2, int itemSel2, op_map map2, op_access access2,
					op_dat dat3, int itemSel3, op_map map3, op_access access3,
					op_dat dat4, int itemSel4, op_map map4, op_access access4,
					op_dat dat5, int itemSel5, op_map map5, op_access access5,
					op_dat dat6, int itemSel6, op_map map6, op_access access6,
					op_dat dat7, int itemSel7, op_map map7, op_access access7
					)
{
	int i;
	
	for ( i = 0; i < set->size; i++ ) {
		
		char * ptr0, * ptr1, * ptr2, * ptr3, * ptr4, * ptr5, * ptr6, * ptr7;
		
		arg_set ( i, dat0, itemSel0, map0, &ptr0 );
		arg_set ( i, dat1, itemSel1, map1, &ptr1 );
		arg_set ( i, dat2, itemSel2, map2, &ptr2 );
		arg_set ( i, dat3, itemSel3, map3, &ptr3 );
		arg_set ( i, dat4, itemSel4, map4, &ptr4 );
		arg_set ( i, dat5, itemSel5, map5, &ptr5 );
		arg_set ( i, dat6, itemSel6, map6, &ptr6 );
		arg_set ( i, dat7, itemSel7, map7, &ptr7 );
		
		
		(*subroutineName) ( ptr0, ptr1, ptr2, ptr3, ptr4, ptr5, ptr6, ptr7 );
		
	}	
}
Ejemplo n.º 2
0
struct message *msg_feedback(const struct unit *u, struct order *ord,
  const char *name, const char *sig, ...)
{
  va_list marker;
  const message_type *mtype = mt_find(name);
  char paramname[64];
  const char *ic = sig;
  variant args[16];
  variant var;
  memset(args, 0, sizeof(args));

  if (ord == NULL)
    ord = u->thisorder;

  if (!mtype) {
    log_error("trying to create message of unknown type \"%s\"\n", name);
    return msg_message("missing_feedback", "unit region command name", u,
      u->region, ord, name);
  }

  var.v = (void *)u;
  arg_set(args, mtype, "unit", var);
  var.v = (void *)u->region;
  arg_set(args, mtype, "region", var);
  var.v = (void *)ord;
  arg_set(args, mtype, "command", var);

  va_start(marker, sig);
  while (*ic && !isalnum(*ic))
    ic++;
  while (*ic) {
    char *oc = paramname;
    int i;

    while (isalnum(*ic))
      *oc++ = *ic++;
    *oc = '\0';

    for (i = 0; i != mtype->nparameters; ++i) {
      if (!strcmp(paramname, mtype->pnames[i]))
        break;
    }
    if (i != mtype->nparameters) {
      if (mtype->types[i]->vtype == VAR_VOIDPTR) {
        args[i].v = va_arg(marker, void *);
      } else if (mtype->types[i]->vtype == VAR_INT) {
        args[i].i = va_arg(marker, int);
      } else {
Ejemplo n.º 3
0
void op_par_loop_2 ( void (*subroutineName)(char *, char *), op_set set,
					 op_dat dat0, int itemSel0, op_map map0, op_access access0,
					 op_dat dat1, int itemSel1, op_map map1, op_access access1
				 )
{
	int i;

	for ( i = 0; i < set->size; i++ ) {
		char * ptr0, * ptr1;
		
		arg_set ( i, dat0, itemSel0, map0, &ptr0 );
		arg_set ( i, dat1, itemSel1, map1, &ptr1 );
		
		(*subroutineName) ( ptr0, ptr1 );
	}
}
Ejemplo n.º 4
0
void op_par_loop_6 ( void (*subroutineName)(char *, char *, char *, char *, char *, char *), op_set * set,
										op_dat * dat0, int itemSel0, op_map * map0, op_access access0,
										op_dat * dat1, int itemSel1, op_map * map1, op_access access1,
										op_dat * dat2, int itemSel2, op_map * map2, op_access access2,
										op_dat * dat3, int itemSel3, op_map * map3, op_access access3,
										op_dat * dat4, int itemSel4, op_map * map4, op_access access4,
										op_dat * dat5, int itemSel5, op_map * map5, op_access access5
										)
{
	int i;
		
	for ( i = 0; i < set->size; i++ ) {

		char * ptr0, * ptr1, * ptr2, * ptr3, * ptr4, * ptr5;
		
		arg_set ( i, dat0, itemSel0, map0, &ptr0 );
		arg_set ( i, dat1, itemSel1, map1, &ptr1 );
		arg_set ( i, dat2, itemSel2, map2, &ptr2 );
		arg_set ( i, dat3, itemSel3, map3, &ptr3 );
		arg_set ( i, dat4, itemSel4, map4, &ptr4 );
		arg_set ( i, dat5, itemSel5, map5, &ptr5 );

		
		(*subroutineName) ( ptr0, ptr1, ptr2, ptr3, ptr4, ptr5 );

	}	
}
Ejemplo n.º 5
0
int main(int argc, char** argv)
{
	/* If no args are specified... */
	if (argc == 1)
	{
		puts(HELP_MSG);
		return 1;
	}

	/* Set defaults */
	os_detect();
	g_filename = DEFAULT;
	g_cc       = NULL;
	g_dotnet   = NULL;
	g_verbose  = 0;

	/* Process any options that will effect script processing */
	arg_set(argc, argv);
	if (!preprocess())
		return 1;

	/* chdir() to the directory containing the project script, so that
	 * relative paths may be used in the script */
	io_chdir(path_getdir(g_filename));

	/* Now run the script */
	g_hasScript = script_run(g_filename);
	if (g_hasScript < 0)
	{
		puts("** Script failed to run, ending.");
		return 1;
	}

	/* Process any options that depend on the script output */
	arg_reset();
	if (!postprocess())
		return 1;

	/* All done */
	if (g_hasScript)
		script_close();
	prj_close();
	return 0;
}