Exemple #1
0
static GtOptionParser *gt_tyr_search_option_parser_new(void *tool_arguments)
{
  GtOptionParser *op;
  GtOption *option, *optiontyr, *optionqueries;
  Tyr_search_options *arguments = tool_arguments;

  op = gt_option_parser_new("[options] -tyr tallymer-index -q queryfile0 "
                            "[queryfile1..] [options]",
                            "Search a set of k-mers in an index constructed "
                            "by \"gt tyr mkindex\".");
  gt_option_parser_set_mailaddress(op,"<*****@*****.**>");

  optiontyr = gt_option_new_string("tyr","specify tallymer-index",
                                   arguments->str_inputindex,
                                   NULL);
  gt_option_is_mandatory(optiontyr);
  gt_option_parser_add_option(op, optiontyr);

  optionqueries = gt_option_new_filenamearray("q","specify query file names",
                                              arguments->queryfilenames);
  gt_option_is_mandatory(optionqueries);
  gt_option_parser_add_option(op, optionqueries);

  option = gt_option_new_string("strand",
                                "specify the strand to be searched: "
                                "use f (for forward strand) or "
                                "p (for reverse complemented strand) or "
                                "fp (for both); default is f",
                                arguments->strandspec,
                                "f");
  gt_option_parser_add_option(op, option);

  option = gt_option_new_stringarray("output",
                                     "specify output flags "
                                     "(qseqnum, qpos, counts, sequence)",
                                     arguments->showmodespec);
  gt_option_parser_add_option(op, option);

  option = gt_option_new_bool("test", "perform tests to verify program "
                                      "correctness", &arguments->performtest,
                                      false);
  gt_option_is_development_option(option);
  gt_option_parser_add_option(op, option);

  option = gt_option_new_verbose(&arguments->verbose);
  gt_option_parser_add_option(op, option);

  return op;
}
Exemple #2
0
static GtOptionParser
            *gt_cge_spacedseed_option_parser_new(void *tool_arguments)
{
  GtOptionParser *op;
  GtOption *option,
           *optionesaindex,
           *optionpckindex;
  Cge_spacedseed_options *arguments = tool_arguments;

  op = gt_option_parser_new("[options]",
                            "Match spaced seeds.");
  gt_option_parser_set_mailaddress(op,"<*****@*****.**>");

  optionesaindex = gt_option_new_string("esa",
                                     "Specify index (enhanced suffix array)",
                                     arguments->str_inputindex, NULL);
  gt_option_parser_add_option(op, optionesaindex);
  arguments->refoptionesaindex = gt_option_ref(optionesaindex);

  optionpckindex = gt_option_new_string("pck",
                                     "Specify index (packed index)",
                                     arguments->str_inputindex, NULL);
  gt_option_parser_add_option(op, optionpckindex);
  arguments->refoptionpckindex = gt_option_ref(optionpckindex);
  gt_option_exclude(optionesaindex,optionpckindex);
  gt_option_is_mandatory_either(optionesaindex,optionpckindex);

  option = gt_option_new_filenamearray("q",
                                    "Specify files containing the "
                                    "query sequences",
                                    arguments->queryfilenames);
  gt_option_parser_add_option(op, option);
  gt_option_is_mandatory(option);

  option = gt_option_new_bool("cmp","compare results of offline and online "
                              "searches",&arguments->docompare,false);
  gt_option_parser_add_option(op, option);
  gt_option_is_development_option(option);

  option = gt_option_new_verbose(&arguments->verbose);
  gt_option_parser_add_option(op, option);

  return op;
}
Exemple #3
0
static GtOptionParser *gt_idxlocali_option_parser_new (void *tool_arguments)
{
  IdxlocaliOptions *arguments = tool_arguments;
  GtOptionParser *op;
  GtOption *option, *optionesaindex, *optionpckindex, *optiononline, *optioncmp;

  gt_assert (arguments != NULL);
  arguments->indexname = gt_str_new ();
  arguments->queryfiles = gt_str_array_new ();

  op = gt_option_parser_new
    ("[options] -q query-file-names [-esa|-pck] indexname",
     "Find all local alignments using suffix tree.");

  gt_option_parser_set_mailaddress (op, "<*****@*****.**>");
  option = gt_option_new_filenamearray ("q","Specify files containing the "
                                            "query sequences",
                                        arguments->queryfiles);
  gt_option_parser_add_option (op, option);

  option = gt_option_new_long ("match",
                               "Specify match score",
                               &arguments->matchscore, 1L);
  gt_option_parser_add_option (op, option);

  option = gt_option_new_long ("mismatch",
                               "Specify mismatch score",
                               &arguments->mismatchscore, -3L);
  gt_option_parser_add_option (op, option);

  option = gt_option_new_long ("gapstart",
                               "Specify gap start score",
                               &arguments->gapstart, -5L);
  gt_option_parser_add_option (op, option);

  option = gt_option_new_long ("gapextend",
                               "Specify gap extension score",
                               &arguments->gapextend, -2L);
  gt_option_parser_add_option (op, option);

  option = gt_option_new_ulong_min ("th",
                                    "Specify the threshold",
                                     &arguments->threshold, 0, 1UL);
  gt_option_parser_add_option (op, option);
  gt_option_is_mandatory (option);

  optionesaindex = gt_option_new_string ("esa",
                                         "Specify index "
                                         "(enhanced suffix array)",
                                         arguments->indexname, NULL);
  gt_option_parser_add_option (op, optionesaindex);
  arguments->refoptionesaindex = gt_option_ref (optionesaindex);

  optionpckindex = gt_option_new_string ("pck",
                                         "Specify index (packed index)",
                                         arguments->indexname, NULL);
  gt_option_parser_add_option (op, optionpckindex);
  arguments->refoptionpckindex = gt_option_ref (optionpckindex);
  gt_option_exclude (optionesaindex, optionpckindex);
  gt_option_is_mandatory_either (optionesaindex, optionpckindex);

  optiononline = gt_option_new_bool("online","Perform online searches",
                                    &arguments->doonline, false);
  gt_option_parser_add_option(op, optiononline);
  gt_option_is_development_option(optiononline);

  optioncmp = gt_option_new_bool("cmp","Compare results of offline and online "
                                 "searches",
                                 &arguments->docompare, false);
  gt_option_parser_add_option(op,optioncmp);
  gt_option_exclude(optiononline,optioncmp);

  option = gt_option_new_bool("s",
                              "Show alignments",
                              &arguments->showalignment, false);
  gt_option_parser_add_option (op, option);

  option = gt_option_new_verbose(&arguments->verbose);
  gt_option_parser_add_option(op, option);
  return op;
}
Exemple #4
0
static GtOptionParser *gt_tyr_mkindex_option_parser_new(void *tool_arguments)
{
  GtOptionParser *op;
  GtOption *option,
           *optionminocc,
           *optionmaxocc,
           *optionpl,
           *optionstoreindex,
           *optionstorecounts,
           *optionscan,
           *optionesa;
  Tyr_mkindex_options *arguments = tool_arguments;

  op = gt_option_parser_new("[options] -esa suffixerator-index [options]",
                            "Count and index k-mers in the given enhanced "
                            "suffix array for a fixed value of k.");
  gt_option_parser_set_mailaddress(op,"<*****@*****.**>");

  optionesa = gt_option_new_string("esa","specify suffixerator-index\n"
                                   "(mandatory option)",
                                   arguments->str_inputindex,
                                   NULL);
  gt_option_is_mandatory(optionesa);
  gt_option_parser_add_option(op, optionesa);

  option = gt_option_new_ulong("mersize",
                               "Specify the mer size.",
                               &arguments->mersize,
                               20UL);
  gt_option_parser_add_option(op, option);

  optionminocc
    = gt_option_new_ulong("minocc",
                          "Specify the minimum occurrence number for "
                          "the mers to output/index",
                          &arguments->userdefinedminocc,
                          0);
  gt_option_parser_add_option(op, optionminocc);

  optionmaxocc
    = gt_option_new_ulong("maxocc",
                          "Specify the maximum occurrence number for "
                          "the mers to output/index",
                          &arguments->userdefinedmaxocc,
                          0);
  gt_option_parser_add_option(op, optionmaxocc);

  optionpl = gt_option_new_uint_min("pl",
                 "specify prefix length for bucket boundary construction\n"
                 "recommendation: use without argument;\n"
                 "then a reasonable prefix length is automatically determined",
                 &arguments->userdefinedprefixlength,
                 0,
                 1U);
  gt_option_argument_is_optional(optionpl);
  gt_option_parser_add_option(op, optionpl);
  arguments->refoptionpl = gt_option_ref(optionpl);

  optionstoreindex = gt_option_new_string("indexname",
                                          "store the mers specified by options "
                                          "-maxocc and -minocc in an index",
                                          arguments->str_storeindex, NULL);
  gt_option_parser_add_option(op, optionstoreindex);

  optionstorecounts = gt_option_new_bool("counts", "store counts of the mers",
                                         &arguments->storecounts,false);
  gt_option_parser_add_option(op, optionstorecounts);

  option = gt_option_new_bool("test", "perform tests to verify program "
                                      "correctness", &arguments->performtest,
                                      false);
  gt_option_is_development_option(option);
  gt_option_parser_add_option(op, option);

  optionscan = gt_option_new_bool("scan",
                                  "read enhanced suffix array sequentially "
                                  "instead of mapping it to memory",
                                  &arguments->scanfile,
                                  false);
  gt_option_parser_add_option(op, optionscan);

  option = gt_option_new_verbose(&arguments->verbose);
  gt_option_parser_add_option(op, option);

  gt_option_imply(optionpl, optionstoreindex);
  gt_option_imply(optionstorecounts, optionstoreindex);
  gt_option_imply_either_2(optionstoreindex,optionminocc,optionmaxocc);
  return op;
}
Exemple #5
0
static GtOptionParser *gt_tyr_occratio_option_parser_new(void *tool_arguments)
{
  GtOptionParser *op;
  GtOption *optionmersizes, *optionesa, *optionminmersize, *optionmaxmersize,
           *optionstep, *optionoutput, *option;
  Tyr_occratio_options *arguments = tool_arguments;

  op = gt_option_parser_new("[options] -esa suffixerator-index [options]",
                            "Compute occurrence ratio for a set of sequences "
                            "represented by an enhanced suffix array.");
  gt_option_parser_set_mailaddress(op,"<*****@*****.**>");

  optionesa = gt_option_new_string("esa","specify suffixerator-index\n"
                                   "(mandatory option)",
                                   arguments->str_inputindex,
                                   NULL);
  gt_option_is_mandatory(optionesa);
  gt_option_parser_add_option(op, optionesa);

  optionminmersize
    = gt_option_new_ulong_min("minmersize",
                              "specify minimum mer size for which "
                              "to compute the occurrence distribution",
                              &arguments->minmersize,0,1UL);
  gt_option_parser_add_option(op, optionminmersize);

  optionmaxmersize
    = gt_option_new_ulong_min("maxmersize",
                              "specify maximum mer size for which "
                              "to compute the occurrence distribution",
                              &arguments->maxmersize,0,1UL);
  gt_option_parser_add_option(op, optionmaxmersize);

  optionstep
    = gt_option_new_ulong_min("step",
                              "specify step size when specifying mer sizes",
                              &arguments->stepmersize,1UL,1UL);
  gt_option_parser_add_option(op, optionstep);

  optionmersizes = gt_option_new_stringarray(
                          "mersizes",
                          "specify mer sizes as non-empty sequence of "
                          "non decreasing positive integers",
                          arguments->mersizesstrings);
  arguments->refoptionmersizes = gt_option_ref(optionmersizes);
  gt_option_parser_add_option(op, optionmersizes);

  optionoutput = gt_option_new_stringarray(
                          "output",
                          "use combination of the following keywords: "
                          "unique nonunique nonuniquemulti relative total "
                          "to specify kind of output",
                          arguments->outputspec);
  gt_option_parser_add_option(op, optionoutput);

  option = gt_option_new_bool("scan",
                              "read suffixerator-index sequentially "
                              "instead of mapping it to memory",
                              &arguments->scanfile,
                              false);
  gt_option_parser_add_option(op, option);

  option = gt_option_new_verbose(&arguments->verbose);
  gt_option_parser_add_option(op, option);

  gt_option_exclude(optionmersizes,optionminmersize);
  gt_option_exclude(optionmersizes,optionmaxmersize);
  gt_option_exclude(optionmersizes,optionstep);
  return op;
}