Example #1
0
int  parse_args(prog_args_t *args, int argc, char **argv) {
  int opt;
  args_default(args);
  while ((opt = getopt(argc, argv, "aglnvf")) != -1) {
    switch (opt) {
    case 'a':
      args->uhd_args = argv[optind];
      break;
    case 'g':
      args->uhd_gain = atof(argv[optind]);
      break;
    case 'f':
      args->uhd_freq = atof(argv[optind]);
      break;
    case 'n':
      args->nof_subframes = atoi(argv[optind]);
      break;
    case 'l':
      args->force_N_id_2 = atoi(argv[optind]);
      break;
    case 'v':
      srslte_verbose++;
      break;
    default:
      usage(args, argv[0]);
      return -1;
    }
  }
  if (args->uhd_freq < 0) {
    usage(args, argv[0]);
    return -1;
  }
  return 0;
}
Example #2
0
static struct args
args_parse(int argc, char **argv)
{
	struct args args;
	long arg;
	int c;

	args = args_default();

	while ((c = getopt(argc, argv, "b:c:hi:mo:v:")) != -1) {
		switch (c) {
		case 'b':
			arg = strtol(optarg, NULL, 10);
			if (arg < 1)
				usage();
			args.block_size = (size_t)arg;
			break;
		case 'i':
			arg = strtol(optarg, NULL, 10);
			if (arg < 1 || arg > (long)max_benchmark_id)
				usage();
			args.id = (size_t)arg;
			break;
		case 'm':
			args.is_inmem = 1;
			break;
		case 'o':
			arg = strtol(optarg, NULL, 10);
			if (arg < 1)
				usage();
			args.size_o = (size_t)arg;
			break;
		case 'v':
			arg = strtol(optarg, NULL, 10);
			if (arg < 1)
				usage();
			args.size_v = (size_t)arg;
			break;
		default:
			usage();
		}
	}
	return (args);
}
Example #3
0
void parse_args(prog_args_t *args, int argc, char **argv) {
  int opt;
  args_default(args);
  while ((opt = getopt(argc, argv, "icagfndvtbp")) != -1) {
    switch (opt) {
    case 'i':
      args->io_config.input_file_name = argv[optind];
      break;
    case 'c':
      args->cell_id_file = atoi(argv[optind]);
      break;
    case 'p':
      args->nof_prb_file = atoi(argv[optind]);
      break;
    case 'a':
      args->io_config.uhd_args = argv[optind];
      break;
    case 'g':
      args->io_config.uhd_gain = atof(argv[optind]);
      break;
    case 'f':
      args->io_config.uhd_freq = atof(argv[optind]);
      break;
   case 't':
      args->io_config.find_threshold = atof(argv[optind]);
      break;
    case 'n':
      args->nof_subframes = atoi(argv[optind]);
      break;
    case 'd':
      args->disable_plots = true;
      break;
    case 'v':
      verbose++;
      break;
    default:
      usage(args, argv[0]);
      exit(-1);
    }
  }
  if (args->io_config.uhd_freq < 0 && args->io_config.input_file_name == NULL) {
    usage(args, argv[0]);
  }
}
Example #4
0
void parse_args(prog_args_t *args, int argc, char **argv) {
  int opt;
  args_default(args);
  while ((opt = getopt(argc, argv, "aAoglipPcOCtdDFRnvrfuUsSZyWMNB")) != -1) {
    switch (opt) {
    case 'i':
      args->input_file_name = argv[optind];
      break;
    case 'p':
      args->file_nof_prb = atoi(argv[optind]);
      break;
    case 'P':
      args->file_nof_ports = atoi(argv[optind]);
      break;
    case 'o':
      args->file_offset_freq = atof(argv[optind]);
      break;
    case 'O':
      args->file_offset_time = atoi(argv[optind]);
      break;
    case 'c':
      args->file_cell_id = atoi(argv[optind]);
      break;
    case 'a':
      args->rf_args = argv[optind];
      break;
    case 'A':
      args->rf_nof_rx_ant = atoi(argv[optind]);
      break;
    case 'g':
      args->rf_gain = atof(argv[optind]);
      break;
    case 'C':
      args->disable_cfo = true;
      break;
    case 'F':
      args->enable_cfo_ref = true;
      break;
    case 'R':
      args->average_subframe = true;
      break;
    case 't':
      args->time_offset = atoi(argv[optind]);
      break;
    case 'f':
      args->rf_freq = strtod(argv[optind], NULL);
      break;
    case 'n':
      args->nof_subframes = atoi(argv[optind]);
      break;
    case 'r':
      args->rnti = strtol(argv[optind], NULL, 16);
      break;
    case 'l':
      args->force_N_id_2 = atoi(argv[optind]);
      break;
    case 'u':
      args->net_port = atoi(argv[optind]);
      break;
    case 'U':
      args->net_address = argv[optind];
      break;
    case 's':
      args->net_port_signal = atoi(argv[optind]);
      break;
    case 'S':
      args->net_address_signal = argv[optind];
      break;
    case 'd':
      args->disable_plots = true;
      break;
    case 'D':
      args->disable_plots_except_constellation = true;
      break;
    case 'v':
      srslte_verbose++;
      args->verbose = srslte_verbose;
      break;
    case 'Z':
      args->decimate = atoi(argv[optind]);
      break;
    case 'y':
      args->cpu_affinity = atoi(argv[optind]);
      break;
    case 'W':
      output_file_name = argv[optind];
      break;
    case 'M':
      args->mbsfn_area_id = atoi(argv[optind]);
      break;
    case 'N':
      args->non_mbsfn_region = atoi(argv[optind]);
      break;
    case 'B':
      args->mbsfn_sf_mask = atoi(argv[optind]);
      break;
    default:
      usage(args, argv[0]);
      exit(-1);
    }
  }
  if (args->rf_freq < 0 && args->input_file_name == NULL) {
    usage(args, argv[0]);
    exit(-1);
  }
}
Example #5
0
void parse_args(prog_args_t *args, int argc, char **argv) {
  int opt;
  args_default(args);
  while ((opt = getopt(argc, argv, "aoglipPcOCtdDnvrfuUsSzZ")) != -1) {
    switch (opt) {
    case 'i':
      args->input_file_name = argv[optind];
      break;
    case 'p':
      args->file_nof_prb = atoi(argv[optind]);
      break;
    case 'P':
      args->file_nof_ports = atoi(argv[optind]);
      break;
    case 'o':
      args->file_offset_freq = atof(argv[optind]);
      break;
    case 'O':
      args->file_offset_time = atoi(argv[optind]);
      break;
    case 'c':
      args->file_cell_id = atoi(argv[optind]);
      break;
    case 'a':
      args->rf_args = argv[optind];
      break;
    case 'g':
      args->rf_gain = atof(argv[optind]);
      break;
    case 'C':
      args->disable_cfo = true;
      break;
    case 't':
      args->time_offset = atoi(argv[optind]);
      break;
    case 'f':
      args->rf_freq = strtod(argv[optind], NULL);
      break;
    case 'n':
      args->nof_subframes = atoi(argv[optind]);
      break;
    case 'r':
      args->rnti = strtol(argv[optind], NULL, 16);
      break;
    case 'l':
      args->force_N_id_2 = atoi(argv[optind]);
      break;
    case 'u':
      args->net_port = atoi(argv[optind]);
      break;
    case 'U':
      args->net_address = argv[optind];
      break;
    case 's':
      args->net_port_signal = atoi(argv[optind]);
      break;
    case 'S':
      args->net_address_signal = argv[optind];
      break;
    case 'd':
      args->disable_plots = true;
      break;
    case 'D':
      args->disable_plots_except_constellation = true;
      break;
    case 'v':
      srslte_verbose++;
      break;
    case 'z':
      args->to_fix = argv[optind];
      break;
    case 'Z':
	  args->rnti_to_fix = argv[optind];
	  break;
	default:
      usage(args, argv[0]);
      exit(-1);
    }
  }
  if (args->input_file_name == NULL && args->to_fix == NULL) {
    usage(args, argv[0]);
    exit(-1);
  }
  if (args->rnti_to_fix == NULL) {
	  printf("### no RNTI file set, working as fix2 ###\n");
  }
}