Skip to content

Commit 4550890

Browse files
committed
added option to add hardcoded params to GRASS algorithms
1 parent 5575d04 commit 4550890

File tree

2 files changed

+12
-2
lines changed

2 files changed

+12
-2
lines changed

python/plugins/processing/algs/grass/GrassAlgorithm.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ class GrassAlgorithm(GeoAlgorithm):
6666

6767
def __init__(self, descriptionfile):
6868
GeoAlgorithm.__init__(self)
69+
self.hardcodedStrings = []
6970
self.descriptionFile = descriptionfile
7071
self.defineCharacteristicsFromFile()
7172
self.numExportedLayers = 0
@@ -121,7 +122,9 @@ def defineCharacteristicsFromFile(self):
121122
while line != '':
122123
try:
123124
line = line.strip('\n').strip()
124-
if line.startswith('Parameter'):
125+
if line.startswith('Hardcoded'):
126+
self.hardcodedStrings.append(line[len('Hardcoded|'):])
127+
elif line.startswith('Parameter'):
125128
parameter = getParameterFromString(line)
126129
self.addParameter(parameter)
127130
if isinstance(parameter, ParameterVector):
@@ -297,6 +300,8 @@ def processAlgorithm(self, progress):
297300
# 2: Set parameters and outputs
298301

299302
command = self.grassName
303+
command += ' ' + ' '.join(self.hardcodedStrings)
304+
300305
for param in self.parameters:
301306
if param.value is None or param.value == '':
302307
continue

python/plugins/processing/algs/grass7/Grass7Algorithm.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ class Grass7Algorithm(GeoAlgorithm):
6565

6666
def __init__(self, descriptionfile):
6767
GeoAlgorithm.__init__(self)
68+
self.hardcodedStrings = []
6869
self.descriptionFile = descriptionfile
6970
self.defineCharacteristicsFromFile()
7071
self.numExportedLayers = 0
@@ -120,7 +121,9 @@ def defineCharacteristicsFromFile(self):
120121
while line != '':
121122
try:
122123
line = line.strip('\n').strip()
123-
if line.startswith('Parameter'):
124+
if line.startswith('Hardcoded'):
125+
self.hardcodedStrings.append(line[len('Hardcoded|'):])
126+
elif line.startswith('Parameter'):
124127
parameter = getParameterFromString(line)
125128
self.addParameter(parameter)
126129
if isinstance(parameter, ParameterVector):
@@ -297,6 +300,8 @@ def processAlgorithm(self, progress):
297300
# 2: Set parameters and outputs
298301

299302
command = self.grass7Name
303+
command += ' ' + ' '.join(self.hardcodedStrings)
304+
300305
for param in self.parameters:
301306
if param.value is None or param.value == '':
302307
continue

0 commit comments

Comments
 (0)