Skip to content

Commit 3c6d6da

Browse files
Pep8 (#93)
* blank lines * trailing semicolon * whitespaces * backslash * us is to compare None and True/False * more indent * import method explicitely rather than import * * trivial comment fixes * remove swp files * remove unused variables * keep import * in cfg file because that's what's used in every package (also avoid to import each type indivually) * go back to use type for checking
1 parent f519266 commit 3c6d6da

11 files changed

+489
-445
lines changed

cmake/dynamic_reconfigure/parameter_generator.py

+1
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
int_t = "int"
3737
double_t = "double"
3838

39+
3940
class ParameterGenerator():
4041
@staticmethod
4142
def dummy(*params, **nparams):

src/dynamic_reconfigure/__init__.py

+7
Original file line numberDiff line numberDiff line change
@@ -38,25 +38,32 @@
3838
import roslib
3939
import os
4040

41+
4142
class DynamicReconfigureException(Exception):
4243
"""
4344
dynamic_reconfigure base exception type
4445
"""
4546
pass
47+
48+
4649
class DynamicReconfigureParameterException(DynamicReconfigureException):
4750
"""
4851
Exception for parameter errors.
4952
"""
5053
pass
54+
55+
5156
class DynamicReconfigureCallbackException(DynamicReconfigureException):
5257
"""
5358
Exception for callback errors.
5459
"""
5560
pass
5661

62+
5763
def find_reconfigure_services():
5864
import rosservice
5965
return sorted([s[:-len('/set_parameters')] for s in rosservice.get_service_list() if s.endswith('/set_parameters')])
6066

67+
6168
def get_parameter_names(descr):
6269
return descr.defaults.keys()

src/dynamic_reconfigure/client.py

+20-18
Original file line numberDiff line numberDiff line change
@@ -42,20 +42,19 @@
4242
except:
4343
pass
4444
import rospy
45-
import rosservice
4645
import sys
4746
import threading
4847
import time
49-
import types
48+
5049
from dynamic_reconfigure import DynamicReconfigureCallbackException
5150
from dynamic_reconfigure import DynamicReconfigureParameterException
52-
from dynamic_reconfigure.srv import Reconfigure as ReconfigureSrv
51+
from dynamic_reconfigure.encoding import decode_config, decode_description, encode_config, extract_params
5352
from dynamic_reconfigure.msg import Config as ConfigMsg
5453
from dynamic_reconfigure.msg import ConfigDescription as ConfigDescrMsg
55-
from dynamic_reconfigure.msg import IntParameter, BoolParameter, StrParameter, DoubleParameter, ParamDescription
56-
from dynamic_reconfigure.encoding import *
54+
from dynamic_reconfigure.srv import Reconfigure as ReconfigureSrv
5755
from rospy.service import ServiceException
5856

57+
5958
class Client(object):
6059
"""
6160
Python dynamic_reconfigure client API
@@ -71,21 +70,21 @@ def __init__(self, name, timeout=None, config_callback=None, description_callbac
7170
@param config_callback: callback for server parameter changes
7271
@param description_callback: internal use only as the API has not stabilized
7372
"""
74-
self.name = name
75-
self.config = None
73+
self.name = name
74+
self.config = None
7675
self.param_description = None
7776
self.group_description = None
7877

7978
self._param_types = None
8079

8180
self._cv = threading.Condition()
8281

83-
self._config_callback = config_callback
82+
self._config_callback = config_callback
8483
self._description_callback = description_callback
8584

86-
self._set_service = self._get_service_proxy('set_parameters', timeout)
85+
self._set_service = self._get_service_proxy('set_parameters', timeout)
8786
self._descriptions_sub = self._get_subscriber('parameter_descriptions', ConfigDescrMsg, self._descriptions_msg)
88-
self._updates_sub = self._get_subscriber('parameter_updates', ConfigMsg, self._updates_msg)
87+
self._updates_sub = self._get_subscriber('parameter_updates', ConfigMsg, self._updates_msg)
8988

9089
def get_configuration(self, timeout=None):
9190
"""
@@ -220,13 +219,13 @@ def update_configuration(self, changes):
220219
config = encode_config(changes)
221220

222221
try:
223-
msg = self._set_service(config).config
222+
msg = self._set_service(config).config
224223
except ServiceException as e:
225224
raise DynamicReconfigureCallbackException('service call failed')
226225

227226
if self.group_description is None:
228227
self.get_group_descriptions()
229-
resp = decode_config(msg, self.group_description)
228+
resp = decode_config(msg, self.group_description)
230229

231230
return resp
232231

@@ -240,9 +239,8 @@ def update_groups(self, changes):
240239

241240
descr = self.get_group_descriptions()
242241

243-
groups = []
244242
def update_state(group, description):
245-
for p,g in description['groups'].items():
243+
for p, g in description['groups'].items():
246244
if g['name'] == group:
247245
description['groups'][p]['state'] = changes[group]
248246
else:
@@ -345,9 +343,13 @@ def _descriptions_msg(self, msg):
345343
self._description_callback(self.param_description)
346344

347345
def _param_type_from_string(self, type_str):
348-
if type_str == 'int': return int
349-
elif type_str == 'double': return float
350-
elif type_str == 'str': return str
351-
elif type_str == 'bool': return bool
346+
if type_str == 'int':
347+
return int
348+
elif type_str == 'double':
349+
return float
350+
elif type_str == 'str':
351+
return str
352+
elif type_str == 'bool':
353+
return bool
352354
else:
353355
raise DynamicReconfigureParameterException('parameter has unknown type: %s. This is a bug in dynamic_reconfigure.' % type_str)

src/dynamic_reconfigure/encoding.py

+48-35
Original file line numberDiff line numberDiff line change
@@ -34,16 +34,15 @@
3434
import roslib; roslib.load_manifest('dynamic_reconfigure')
3535
except:
3636
pass
37-
import rospy
38-
import inspect
3937
import copy
4038
import sys
4139

40+
from dynamic_reconfigure.msg import BoolParameter, DoubleParameter, IntParameter, ParamDescription, StrParameter
4241
from dynamic_reconfigure.msg import Config as ConfigMsg
4342
from dynamic_reconfigure.msg import ConfigDescription as ConfigDescrMsg
4443
from dynamic_reconfigure.msg import Group as GroupMsg
4544
from dynamic_reconfigure.msg import GroupState
46-
from dynamic_reconfigure.msg import IntParameter, BoolParameter, StrParameter, DoubleParameter, ParamDescription
45+
4746

4847
class Config(dict):
4948
def __init__(self, *args, **kwargs):
@@ -90,6 +89,7 @@ def encode_description(descr):
9089
msg.groups = encode_groups(None, descr.config_description)
9190
return msg
9291

92+
9393
def encode_groups(parent, group):
9494
group_list = []
9595

@@ -109,16 +109,21 @@ def encode_groups(parent, group):
109109

110110
return group_list
111111

112+
112113
def encode_config(config, flat=True):
113114
msg = ConfigMsg()
114115
for k, v in config.items():
115116
## @todo add more checks here?
116-
if type(v) == int: msg.ints.append(IntParameter(k, v))
117-
elif type(v) == bool: msg.bools.append(BoolParameter(k, v))
118-
elif type(v) == str: msg.strs.append(StrParameter(k, v))
119-
elif sys.version_info.major < 3 and type(v) == unicode:
117+
if type(v) == int:
118+
msg.ints.append(IntParameter(k, v))
119+
elif type(v) == bool:
120+
msg.bools.append(BoolParameter(k, v))
121+
elif type(v) == str:
122+
msg.strs.append(StrParameter(k, v))
123+
elif sys.version_info.major < 3 and isinstance(v, unicode):
120124
msg.strs.append(StrParameter(k, v))
121-
elif type(v) == float: msg.doubles.append(DoubleParameter(k, v))
125+
elif type(v) == float:
126+
msg.doubles.append(DoubleParameter(k, v))
122127
elif type(v) == dict or isinstance(v, Config):
123128
if flat is True:
124129
def flatten(g):
@@ -134,6 +139,7 @@ def flatten(g):
134139

135140
return msg
136141

142+
137143
def group_dict(group):
138144
try:
139145
state = group.state
@@ -142,17 +148,18 @@ def group_dict(group):
142148
if hasattr(group, 'type'):
143149
type = group.type
144150
else:
145-
type =''
151+
type = ''
146152
return Config({
147-
'id' : group.id,
148-
'parent' : group.parent,
149-
'name' : group.name,
150-
'type' : type,
153+
'id': group.id,
154+
'parent': group.parent,
155+
'name': group.name,
156+
'type': type,
151157
'state': state,
152-
'groups' : Config({}),
153-
'parameters' : Config({}),
158+
'groups': Config({}),
159+
'parameters': Config({}),
154160
})
155161

162+
156163
def decode_description(msg):
157164
mins = decode_config(msg.min)
158165
maxes = decode_config(msg.max)
@@ -165,14 +172,14 @@ def params_from_msg(msg):
165172
for param in msg.parameters:
166173
name = param.name
167174
params.append({
168-
'name': name,
169-
'min' : mins[name],
170-
'max' : maxes[name],
171-
'default' : defaults[name],
172-
'type' : param.type,
173-
'level': param.level,
174-
'description' : param.description,
175-
'edit_method' : param.edit_method,
175+
'name': name,
176+
'min': mins[name],
177+
'max': maxes[name],
178+
'default': defaults[name],
179+
'type': param.type,
180+
'level': param.level,
181+
'description': param.description,
182+
'edit_method': param.edit_method,
176183
})
177184
return params
178185

@@ -186,21 +193,22 @@ def build_tree(group):
186193
children = Config({})
187194
for g in grouplist:
188195
if g.id == 0:
189-
pass
196+
pass
190197
elif g.parent == group['id']:
191-
gd = group_dict(g)
198+
gd = group_dict(g)
192199

193-
gd['parameters'] = params_from_msg(g)
194-
gd['groups'] = build_tree(gd)
195-
# add the dictionary into the tree
196-
children[gd['name']] = gd
200+
gd['parameters'] = params_from_msg(g)
201+
gd['groups'] = build_tree(gd)
202+
# add the dictionary into the tree
203+
children[gd['name']] = gd
197204
return children
198205

199206
groups['groups'] = build_tree(groups)
200207

201208
return groups
202209

203-
def get_tree(m, group = None):
210+
211+
def get_tree(m, group=None):
204212
if group is None:
205213
for x in m.groups:
206214
if x.id == 0:
@@ -209,7 +217,7 @@ def get_tree(m, group = None):
209217
children = Config({})
210218
for g in m.groups:
211219
if g.id == 0:
212-
pass
220+
pass
213221
elif g.parent == group.id:
214222
gd = group_dict(g)
215223

@@ -223,9 +231,11 @@ def get_tree(m, group = None):
223231
else:
224232
return children
225233

226-
def initial_config(msg, description = None):
234+
235+
def initial_config(msg, description=None):
227236
d = Config([(kv.name, kv.value) for kv in msg.bools + msg.ints + msg.strs + msg.doubles])
228-
def gt(m, descr, group = None):
237+
238+
def gt(m, descr, group=None):
229239
# get the default group
230240
if group is None:
231241
for x in m.groups:
@@ -276,7 +286,8 @@ def add_params(group, descr):
276286

277287
return d
278288

279-
def decode_config(msg, description = None):
289+
290+
def decode_config(msg, description=None):
280291
if sys.version_info.major < 3:
281292
for s in msg.strs:
282293
if not isinstance(s.value, unicode):
@@ -302,17 +313,19 @@ def add_params(group, descr):
302313

303314
return d
304315

316+
305317
def extract_params(group):
306318
params = []
307319
params.extend(group['parameters'])
308320
try:
309-
for n,g in group['groups'].items():
321+
for n, g in group['groups'].items():
310322
params.extend(extract_params(g))
311323
except AttributeError:
312324
for g in group['groups']:
313325
params.extend(extract_params(g))
314326
return params
315327

328+
316329
def get_parents(group, descriptions):
317330
parents = []
318331
for p in descriptions['group']:

0 commit comments

Comments
 (0)