|
@@ -1,413 +0,0 @@
|
|
|
-#include "global.h"
|
|
|
-
|
|
|
-
|
|
|
-int check_ready(void)
|
|
|
-{
|
|
|
- int retval;
|
|
|
-
|
|
|
-
|
|
|
- flg.overwrlist = 0;
|
|
|
-
|
|
|
- retval = 0;
|
|
|
-
|
|
|
- if (check_required() || check_names() || check_io())
|
|
|
- retval = 1;
|
|
|
-
|
|
|
- if (!retval) {
|
|
|
- if (flg.overwrlist & FILL)
|
|
|
- G_remove("cell", map.fill);
|
|
|
-
|
|
|
- if (flg.overwrlist & DIR)
|
|
|
- G_remove("cell", map.dir);
|
|
|
-
|
|
|
- if (flg.overwrlist & BELEV)
|
|
|
- G_remove("cell", map.belev);
|
|
|
-
|
|
|
- if (flg.overwrlist & TOPIDX)
|
|
|
- G_remove("cell", map.topidx);
|
|
|
-
|
|
|
- if (flg.overwrlist & IDXSTATS)
|
|
|
- unlink(file.idxstats);
|
|
|
-
|
|
|
- if (flg.overwrlist & OUTPUT)
|
|
|
- unlink(file.output);
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- return retval;
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-int check_required(void)
|
|
|
-{
|
|
|
- int retval;
|
|
|
-
|
|
|
-
|
|
|
- retval = 0;
|
|
|
-
|
|
|
- if (!flg.input) {
|
|
|
- if (!map.elev) {
|
|
|
- G_warning("elevation required");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (!map.basin) {
|
|
|
- G_warning("basin required");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (!map.belev) {
|
|
|
- G_warning("belevation required");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (!map.topidx) {
|
|
|
- G_warning("topidx required");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (map.fill && !map.dir) {
|
|
|
- G_warning("direction required " "if depressionless is given");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (map.dir && !map.fill) {
|
|
|
- G_warning("depressionless required " "if direction is given");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- }
|
|
|
- else {
|
|
|
- if (map.belev && !map.topidx) {
|
|
|
- G_warning("topidx required " "if belevation is given");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- return retval;
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-int check_names(void)
|
|
|
-{
|
|
|
- int retval;
|
|
|
-
|
|
|
-
|
|
|
- retval = 0;
|
|
|
-
|
|
|
- if (!flg.input) {
|
|
|
- if (map.elev) {
|
|
|
- if (map.basin && !strcmp(map.elev, map.basin)) {
|
|
|
- G_warning("elevation == basin");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (map.fill && !strcmp(map.elev, map.fill)) {
|
|
|
- G_warning("elevation == " "depressionless");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (map.dir && !strcmp(map.elev, map.dir)) {
|
|
|
- G_warning("elevation == direction");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (map.belev && !strcmp(map.elev, map.belev)) {
|
|
|
- G_warning("elevation == belevation");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (map.topidx && !strcmp(map.elev, map.topidx)) {
|
|
|
- G_warning("elevation == topidx");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if (map.basin) {
|
|
|
- if (map.fill && !strcmp(map.basin, map.fill)) {
|
|
|
- G_warning("basin == depressionless");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (map.dir && !strcmp(map.basin, map.dir)) {
|
|
|
- G_warning("basin == direction");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (map.belev && !strcmp(map.basin, map.belev)) {
|
|
|
- G_warning("basin == belevation");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (map.topidx && !strcmp(map.basin, map.topidx)) {
|
|
|
- G_warning("basin == topidx");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if (map.fill) {
|
|
|
- if (map.dir && !strcmp(map.fill, map.dir)) {
|
|
|
- G_warning("depressionless == " "direction");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (map.belev && !strcmp(map.fill, map.belev)) {
|
|
|
- G_warning("depressionless == " "belevation");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (map.topidx && !strcmp(map.fill, map.topidx)) {
|
|
|
- G_warning("depressionless == topidx");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if (map.dir) {
|
|
|
- if (map.belev && !strcmp(map.dir, map.belev)) {
|
|
|
- G_warning("direction == belevation");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (map.topidx && !strcmp(map.dir, map.topidx)) {
|
|
|
- G_warning("direction == topidx");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if (map.belev) {
|
|
|
- if (map.topidx && !strcmp(map.belev, map.topidx)) {
|
|
|
- G_warning("belevation == topidx");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if (!strcmp(file.idxstats, file.params)) {
|
|
|
- G_warning("idxstats == parameters");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (!strcmp(file.idxstats, file.input)) {
|
|
|
- G_warning("idxstats == input");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (!strcmp(file.idxstats, file.output)) {
|
|
|
- G_warning("idxstats == output");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (file.Qobs && !strcmp(file.idxstats, file.Qobs)) {
|
|
|
- G_warning("idxstats == Qobs");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (!strcmp(file.params, file.input)) {
|
|
|
- G_warning("parameters == input");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (!strcmp(file.params, file.output)) {
|
|
|
- G_warning("parameters == output");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (file.Qobs && !strcmp(file.params, file.Qobs)) {
|
|
|
- G_warning("parameters == Qobs");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (!strcmp(file.input, file.output)) {
|
|
|
- G_warning("input == output");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (file.Qobs && !strcmp(file.input, file.Qobs)) {
|
|
|
- G_warning("input == Qobs");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (file.Qobs && !strcmp(file.output, file.Qobs)) {
|
|
|
- G_warning("output == Qobs");
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- return retval;
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
-int check_io(void)
|
|
|
-{
|
|
|
- int retval;
|
|
|
- FILE *fp;
|
|
|
-
|
|
|
-
|
|
|
- retval = 0;
|
|
|
-
|
|
|
- if (!flg.input) {
|
|
|
- if (map.elev && !G_find_raster(map.elev, mapset)) {
|
|
|
- G_warning("%s - not exists", map.elev);
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (map.basin && !G_find_raster(map.basin, mapset)) {
|
|
|
- G_warning("%s - not exists", map.basin);
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
-
|
|
|
- if (map.fill && G_find_raster(map.fill, mapset)) {
|
|
|
- if (flg.overwr) {
|
|
|
- flg.overwrlist |= FILL;
|
|
|
- }
|
|
|
- else {
|
|
|
- G_warning("%s - already exists", map.fill);
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if (map.dir && G_find_raster(map.dir, mapset)) {
|
|
|
- if (flg.overwr) {
|
|
|
- flg.overwrlist |= DIR;
|
|
|
- }
|
|
|
- else {
|
|
|
- G_warning("%s - already exists", map.dir);
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if (map.belev && G_find_raster(map.belev, mapset)) {
|
|
|
- if (flg.overwr) {
|
|
|
- flg.overwrlist |= BELEV;
|
|
|
- }
|
|
|
- else {
|
|
|
- G_warning("%s - already exists", map.belev);
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if (map.topidx && G_find_raster(map.topidx, mapset)) {
|
|
|
- if (flg.overwr) {
|
|
|
- flg.overwrlist |= TOPIDX;
|
|
|
- }
|
|
|
- else {
|
|
|
- G_warning("%s - already exists", map.topidx);
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if (file.idxstats && (fp = fopen(file.idxstats, "r"))) {
|
|
|
- fclose(fp);
|
|
|
- if (flg.overwr) {
|
|
|
- flg.overwrlist |= IDXSTATS;
|
|
|
- }
|
|
|
- else {
|
|
|
- G_warning("%s - file already exists", file.idxstats);
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- else {
|
|
|
- if (map.belev) {
|
|
|
- if (!G_find_raster(map.belev, mapset)) {
|
|
|
- G_warning("%s - not exists", map.belev);
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- else {
|
|
|
- if (map.topidx && G_find_raster(map.topidx, mapset)) {
|
|
|
- if (flg.overwr) {
|
|
|
- flg.overwrlist |= TOPIDX;
|
|
|
- }
|
|
|
- else {
|
|
|
- G_warning("%s - " "already exists", map.topidx);
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if (file.idxstats && (fp = fopen(file.idxstats, "r"))) {
|
|
|
- fclose(fp);
|
|
|
- if (flg.overwr) {
|
|
|
- flg.overwrlist |= IDXSTATS;
|
|
|
- }
|
|
|
- else {
|
|
|
- G_warning("%s - file "
|
|
|
- "already exists", file.idxstats);
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- else if (map.topidx) {
|
|
|
- if (!G_find_raster(map.topidx, mapset)) {
|
|
|
- G_warning("%s - not exists", map.topidx);
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- else {
|
|
|
- if (file.idxstats && (fp = fopen(file.idxstats, "r"))) {
|
|
|
- fclose(fp);
|
|
|
- if (flg.overwr) {
|
|
|
- flg.overwrlist |= IDXSTATS;
|
|
|
- }
|
|
|
- else {
|
|
|
- G_warning("%s - file "
|
|
|
- "already exists", file.idxstats);
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- else if (file.idxstats) {
|
|
|
- if (!(fp = fopen(file.idxstats, "r"))) {
|
|
|
- G_warning("%s - file not exists", file.idxstats);
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- else {
|
|
|
- fclose(fp);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if (file.params) {
|
|
|
- if (!(fp = fopen(file.params, "r"))) {
|
|
|
- G_warning("%s - file not exists", file.params);
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- else {
|
|
|
- fclose(fp);
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if (file.input) {
|
|
|
- if (!(fp = fopen(file.input, "r"))) {
|
|
|
- G_warning("%s - file not exists", file.input);
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- else {
|
|
|
- fclose(fp);
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if (file.output && (fp = fopen(file.output, "r"))) {
|
|
|
- fclose(fp);
|
|
|
- if (flg.overwr) {
|
|
|
- flg.overwrlist |= OUTPUT;
|
|
|
- }
|
|
|
- else {
|
|
|
- G_warning("%s - file already exists", file.output);
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- if (file.Qobs) {
|
|
|
- if (!(fp = fopen(file.Qobs, "r"))) {
|
|
|
- G_warning("%s - file not exists", file.Qobs);
|
|
|
- retval = 1;
|
|
|
- }
|
|
|
- else {
|
|
|
- fclose(fp);
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
-
|
|
|
- return retval;
|
|
|
-}
|