|
GRASS 8 Programmer's Manual 8.6.0dev(2026)-1878fdfec5
|
GIS Library - converts the command line arguments into actinia JSON process chain building blocks. More...
#include <stdio.h>#include <stdlib.h>#include <string.h>#include <grass/glocale.h>#include <grass/gis.h>#include "parser_local_proto.h"
Go to the source code of this file.
Functions | |
| void | check_create_import_opts (struct Option *, char *, FILE *) |
| void | check_create_export_opts (struct Option *, char *, FILE *) |
| char * | check_mapset_in_layer_name (char *, int) |
| char * | G__json (void) |
| This function generates actinia JSON process chain building blocks from the command line arguments that can be used in the actinia processing API. | |
GIS Library - converts the command line arguments into actinia JSON process chain building blocks.
SPDX-FileCopyrightText: 2018-2021 GRASS Development Team SPDX-License-Identifier: GPL-2.0-or-later
Definition in file parser_json.c.
Definition at line 456 of file parser_json.c.
References check_mapset_in_layer_name(), G_chop(), G_free(), G_free_tokens(), G_strncasecmp(), and G_tokenize().
Referenced by G__json().
Definition at line 367 of file parser_json.c.
References _, check_mapset_in_layer_name(), G_chop(), G_debug(), G_fatal_error(), G_free(), G_free_tokens(), G_strncasecmp(), and G_tokenize().
Referenced by G__json().
Definition at line 517 of file parser_json.c.
References G_chop(), G_mapset(), G_strcasecmp(), and G_tokenize().
Referenced by check_create_export_opts(), and check_create_import_opts().
This function generates actinia JSON process chain building blocks from the command line arguments that can be used in the actinia processing API.
The following commands will create according JSON output:
r.slope.aspect elevation="elevation@https://storage.googleapis.com/graas-geodata/elev_ned_30m.tif" slope="slope+GTiff" aspect="aspect+GTiff" –json
{ "module": "r.slope.aspect", "id": "r.slope.aspect_1804289383", "inputs":[ {"import_descr": {"source":"https://storage.googleapis.com/graas-geodata/elev_ned_30m.tif", "type":"raster"}, "param": "elevation", "value": "elevation"}, {"param": "format", "value": "degrees"}, {"param": "precision", "value": "FCELL"}, {"param": "zscale", "value": "1.0"}, {"param": "min_slope", "value": "0.0"} ], "outputs":[ {"export": {"format":"GTiff", "type":"raster"}, "param": "slope", "value": "slope"}, {"export": {"format":"GTiff", "type":"raster"}, "param": "aspect", "value": "aspect"} ] }
v.out.ascii input="hospitals@PERMANENT" output="myfile+TXT" –json
{ "module": "v.out.ascii", "id": "v.out.ascii_1804289383", "inputs":[ {"param": "input", "value": "hospitals@PERMANENT"}, {"param": "layer", "value": "1"}, {"param": "type", "value": "point,line,boundary,centroid,area,face,kernel"}, {"param": "format", "value": "point"}, {"param": "separator", "value": "pipe"}, {"param": "precision", "value": "8"} ], "outputs":[ {"export": {"format":"TXT", "type":"file"}, "param": "output", "value": "$file::myfile"} ] }
v.info map="hospitals@PERMANENT" -c –json
{ "module": "v.info", "id": "v.info_1804289383", "flags":"c", "inputs":[ {"param": "map", "value": "hospitals@PERMANENT"}, {"param": "layer", "value": "1"} ] }
A process chain has the following form
{ 'list': [{ 'module': 'g.region', 'id': 'g_region_1', 'inputs': [{'import_descr': {'source': 'https://storage.googleapis.com/graas-geodata/elev_ned_30m.tif', 'type': 'raster'}, 'param': 'raster', 'value': 'elev_ned_30m_new'}], 'flags': 'p' }, { 'module': 'r.slope.aspect', 'id': 'r_slope_aspect_1', 'inputs': [{'param': 'elevation', 'value': 'elev_ned_30m_new'}], 'outputs': [{'export': {'format': 'GTiff', 'type': 'raster'}, 'param': 'slope', 'value': 'elev_ned_30m_new_slope'}], 'flags': 'a'}, { 'module': 'r.univar', 'id': 'r_univar_1', 'inputs': [{"import_descr": {"source": "LT52170762005240COA00", "type": "landsat", "landsat_atcor": "dos1"}, 'param': 'map', 'value': 'LT52170762005240COA00_dos1.1'}], 'stdout': {'id': 'stats', 'format': 'kv', 'delimiter': '='}, 'flags': 'a' }, { 'module': 'exporter', 'id': 'exporter_1', 'outputs': [{'export': {'format': 'GTiff', 'type': 'raster'}, 'param': 'map', 'value': 'LT52170762005240COA00_dos1.1'}] }, { "id": "ascii_out", "module": "r.out.ascii", "inputs": [{"param": "input", "value": "elevation@PERMANENT"}, {"param": "precision", "value": "0"}], "stdout": {"id": "elev_1", "format": "table", "delimiter": " "}, "flags": "h" }, { "id": "ascii_export", "module": "r.out.ascii", "inputs": [{"param": "input", "value": "elevation@PERMANENT"}], "outputs": [ {"export": {"type": "file", "format": "TXT"}, "param": "output", "value": "$file::out1"} ] }, { "id": "raster_list", "module": "g.list", "inputs": [{"param": "type", "value": "raster"}], "stdout": {"id": "raster", "format": "list", "delimiter": "\n"} }, { "module": "r.what", "id": "r_what_1", "verbose": True, "flags": "nfic", "inputs": [ { "param": "map", "value": "landuse96_28m@PERMANENT" }, { "param": "coordinates", "value": "633614.08,224125.12,632972.36,225382.87" }, { "param": "null_value", "value": "null" }, { "param": "separator", "value": "pipe" } ], "stdout": {"id": "sample", "format": "table", "delimiter": "|"} } ], 'webhooks': {'update': 'http://business-logic.company.com/api/v1/actinia-update-webhook', 'finished': 'http://business-logic.company.com/api/v1/actinia-finished-webhook'}, 'version': '1' }
Definition at line 191 of file parser_json.c.
References check_create_export_opts(), check_create_import_opts(), G__split_gisprompt(), G_free(), G_program_name(), G_strncasecmp(), G_tempfile(), NULL, and st.
Referenced by G_parser().