[GRASS-dev] r.mapcalc and g.remove --v/q issues

Martin Landa landa.martin at gmail.com
Mon Oct 9 12:39:01 EDT 2006


Hi,

thanks Glynn!, modified patch applied in CVS.

Best regards, Martin

2006/10/9, Glynn Clements <glynn at gclements.plus.com>:
>
> Martin Landa wrote:
>
> > trying to cleanup g.remove module I have prepared the patch. Is it OK
> > for you? Any comments welcomed...
>
> Rather than hard-coding checks for specific entity types:
>
> +       if (G_strcasecmp(list[n].alias, "rast") == 0 ) {
> +           if ((mapset = G_find_cell2 (old, "")) == NULL) {
> +               G_warning(_("Raster map <%s> not found"), old);
> +               result = 1;
> +           }
> +       }
> +
> +       if (G_strcasecmp(list[n].alias, "rast3d") == 0 ) {
> +           if ((mapset = G_find_grid3 (old, "")) == NULL) {
> +               G_warning(_("Raster 3d map <%s> not found"), old);
> +               result = 1;
> +           }
> +       }
>
> I would add a flag which is initially cleared for each entity (map
> etc) and set when an element is actually removed. A warning would be
> generated if the flag is still clear when all of the elements for an
> entity have been processed.
>
> E.g.:
>
> +       removed = 0;
>         for (i = 0; i < list[n].nelem; i++) {
>             switch (G_remove (list[n].element[i], old))
>             {
>             case -1:
> -               G_warning (" %-*s %s", len, list[n].desc[i],_("COULD NOT REMOVE"));
> +               G_warning ("%s: %s", list[n].desc[i],_("couldn't be removed"));
>                 result = 1;
>                 break;
>             case  0:
> -               G_message (" %-*s %s", len, list[n].desc[i],_("MISSING"));
> +               G_debug (1, "%s: %s", list[n].desc[i],_("missing"));
>                 break;
>             case 1:
> -               G_message (" %-*s ", len, list[n].desc[i]);
> +               G_debug (1, "%s: %s", list[n].desc[i],_("removed"));
> +               removed = 1;
>                 break;
>             }
>         }
> +
> +       if (!removed)
> +               G_warning ("%s: %s", list[n].desc[i],_("nothing removed"));
>
> --
> Glynn Clements <glynn at gclements.plus.com>
>


-- 
Martin Landa <landa.martin at gmail.com> * http://gama.fsv.cvut.cz/~landa *




More information about the grass-dev mailing list