From 26ba4671d07e05101ff18b9669ecf2e97ee8255f Mon Sep 17 00:00:00 2001 From: Thomas White Date: Wed, 10 May 2023 10:33:31 +0200 Subject: align_detector: Add --level --- src/align_detector.c | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/align_detector.c b/src/align_detector.c index 1bc9b5e3..8a1af962 100644 --- a/src/align_detector.c +++ b/src/align_detector.c @@ -55,6 +55,7 @@ static void show_help(const char *s) "\n" " -g, --geometry=file Input geometry file\n" " -o, --output=file Output geometry file\n" + " -l, --level=n Alignment hierarchy level\n" "\n" " -h, --help Display this help message\n" " --version Print version number and exit\n"); @@ -66,6 +67,8 @@ int main(int argc, char *argv[]) int c; char *in_geom = NULL; char *out_geom = NULL; + int level = 0; + char *rval; /* Long options */ const struct option longopts[] = { @@ -76,12 +79,13 @@ int main(int argc, char *argv[]) {"version", 0, NULL, 'V'}, {"input", 1, NULL, 'g'}, {"output", 1, NULL, 'o'}, + {"level", 1, NULL, 'l'}, {0, 0, NULL, 0} }; /* Short options */ - while ((c = getopt_long(argc, argv, "hVo:g:i:", + while ((c = getopt_long(argc, argv, "hVo:g:i:l:", longopts, NULL)) != -1) { @@ -105,6 +109,14 @@ int main(int argc, char *argv[]) out_geom = strdup(optarg); break; + case 'l' : + errno = 0; + level = strtol(optarg, &rval, 10); + if ( *rval != '\0' ) { + ERROR("Invalid value for --level.\n"); + return 1; + } + case 0 : break; -- cgit v1.2.3