added option to add hardcoded params to GRASS algorithms

This commit is contained in:
volaya 2015-10-22 09:44:19 +02:00
parent 5575d04a80
commit 455089025e
2 changed files with 12 additions and 2 deletions

View File

@ -66,6 +66,7 @@ class GrassAlgorithm(GeoAlgorithm):
def __init__(self, descriptionfile):
GeoAlgorithm.__init__(self)
self.hardcodedStrings = []
self.descriptionFile = descriptionfile
self.defineCharacteristicsFromFile()
self.numExportedLayers = 0
@ -121,7 +122,9 @@ class GrassAlgorithm(GeoAlgorithm):
while line != '':
try:
line = line.strip('\n').strip()
if line.startswith('Parameter'):
if line.startswith('Hardcoded'):
self.hardcodedStrings.append(line[len('Hardcoded|'):])
elif line.startswith('Parameter'):
parameter = getParameterFromString(line)
self.addParameter(parameter)
if isinstance(parameter, ParameterVector):
@ -297,6 +300,8 @@ class GrassAlgorithm(GeoAlgorithm):
# 2: Set parameters and outputs
command = self.grassName
command += ' ' + ' '.join(self.hardcodedStrings)
for param in self.parameters:
if param.value is None or param.value == '':
continue

View File

@ -65,6 +65,7 @@ class Grass7Algorithm(GeoAlgorithm):
def __init__(self, descriptionfile):
GeoAlgorithm.__init__(self)
self.hardcodedStrings = []
self.descriptionFile = descriptionfile
self.defineCharacteristicsFromFile()
self.numExportedLayers = 0
@ -120,7 +121,9 @@ class Grass7Algorithm(GeoAlgorithm):
while line != '':
try:
line = line.strip('\n').strip()
if line.startswith('Parameter'):
if line.startswith('Hardcoded'):
self.hardcodedStrings.append(line[len('Hardcoded|'):])
elif line.startswith('Parameter'):
parameter = getParameterFromString(line)
self.addParameter(parameter)
if isinstance(parameter, ParameterVector):
@ -297,6 +300,8 @@ class Grass7Algorithm(GeoAlgorithm):
# 2: Set parameters and outputs
command = self.grass7Name
command += ' ' + ' '.join(self.hardcodedStrings)
for param in self.parameters:
if param.value is None or param.value == '':
continue