lsst.pex.config
16.0-3-g9645794+3
python
lsst
pex
config
convert.py
Go to the documentation of this file.
1
#
2
# LSST Data Management System
3
# Copyright 2008, 2009, 2010 LSST Corporation.
4
#
5
# This product includes software developed by the
6
# LSST Project (http://www.lsst.org/).
7
#
8
# This program is free software: you can redistribute it and/or modify
9
# it under the terms of the GNU General Public License as published by
10
# the Free Software Foundation, either version 3 of the License, or
11
# (at your option) any later version.
12
#
13
# This program is distributed in the hope that it will be useful,
14
# but WITHOUT ANY WARRANTY; without even the implied warranty of
15
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
# GNU General Public License for more details.
17
#
18
# You should have received a copy of the LSST License Statement and
19
# the GNU General Public License along with this program. If not,
20
# see <http://www.lsstcorp.org/LegalNotices/>.
21
#
22
import
lsst.pex.policy
23
import
lsst.daf.base
24
25
26
def
makePropertySet
(config):
27
def
_helper(ps, prefix, dict_):
28
for
k, v
in
dict_.items():
29
name = prefix +
"."
+ k
if
prefix
is
not
None
else
k
30
if
isinstance(v, dict):
31
_helper(ps, name, v)
32
elif
v
is
not
None
:
33
ps.set(name, v)
34
35
if
config
is
not
None
:
36
ps =
lsst.daf.base.PropertySet
()
37
_helper(ps,
None
, config.toDict())
38
return
ps
39
else
:
40
return
None
41
42
43
def
makePolicy
(config):
44
def
_helper(dict_):
45
p =
lsst.pex.policy.Policy
()
46
for
k, v
in
dict_.items():
47
if
isinstance(v, dict):
48
p.set(k, _helper(v))
49
elif
isinstance(v, list):
50
for
vi
in
v:
51
p.add(k, vi)
52
elif
v
is
not
None
:
53
p.set(k, v)
54
return
p
55
if
config:
56
return
_helper(config.toDict())
57
else
:
58
return
None
lsst.pex::policy
lsst.pex.config.convert.makePropertySet
def makePropertySet(config)
Definition:
convert.py:26
lsst.pex::policy::Policy
lsst.pex.config.convert.makePolicy
def makePolicy(config)
Definition:
convert.py:43
lsst::daf::base
lsst::daf::base::PropertySet
Generated on Thu Sep 6 2018 14:15:16 for lsst.pex.config by
1.8.13