LSST Applications  21.0.0-172-gfb10e10a+18fedfabac,22.0.0+297cba6710,22.0.0+80564b0ff1,22.0.0+8d77f4f51a,22.0.0+a28f4c53b1,22.0.0+dcf3732eb2,22.0.1-1-g7d6de66+2a20fdde0d,22.0.1-1-g8e32f31+297cba6710,22.0.1-1-geca5380+7fa3b7d9b6,22.0.1-12-g44dc1dc+2a20fdde0d,22.0.1-15-g6a90155+515f58c32b,22.0.1-16-g9282f48+790f5f2caa,22.0.1-2-g92698f7+dcf3732eb2,22.0.1-2-ga9b0f51+7fa3b7d9b6,22.0.1-2-gd1925c9+bf4f0e694f,22.0.1-24-g1ad7a390+a9625a72a8,22.0.1-25-g5bf6245+3ad8ecd50b,22.0.1-25-gb120d7b+8b5510f75f,22.0.1-27-g97737f7+2a20fdde0d,22.0.1-32-gf62ce7b1+aa4237961e,22.0.1-4-g0b3f228+2a20fdde0d,22.0.1-4-g243d05b+871c1b8305,22.0.1-4-g3a563be+32dcf1063f,22.0.1-4-g44f2e3d+9e4ab0f4fa,22.0.1-42-gca6935d93+ba5e5ca3eb,22.0.1-5-g15c806e+85460ae5f3,22.0.1-5-g58711c4+611d128589,22.0.1-5-g75bb458+99c117b92f,22.0.1-6-g1c63a23+7fa3b7d9b6,22.0.1-6-g50866e6+84ff5a128b,22.0.1-6-g8d3140d+720564cf76,22.0.1-6-gd805d02+cc5644f571,22.0.1-8-ge5750ce+85460ae5f3,master-g6e05de7fdc+babf819c66,master-g99da0e417a+8d77f4f51a,w.2021.48
LSST Data Management Base Package
Classes | Functions
lsst.daf.base.propertyContainer.propertyContainerContinued Namespace Reference

Classes

class  ReturnStyle
 
class  PropertySet
 
class  PropertyList
 

Functions

def getPropertySetState (container, asLists=False)
 
def getPropertyListState (container, asLists=False)
 
def setPropertySetState (container, state)
 
def setPropertyListState (container, state)
 

Function Documentation

◆ getPropertyListState()

def lsst.daf.base.propertyContainer.propertyContainerContinued.getPropertyListState (   container,
  asLists = False 
)
Get the state of a PropertyList in a form that can be pickled.

Parameters
----------
container : `PropertyList`
    The property container.
asLists : `bool`, optional
    If False, the default, `tuple` will be used for the contents. If true
    a `list` will be used.

Returns
-------
state : `list` of `tuple` or `list` of `list`
    The state, as a list of tuples (or lists), each of which contains
    the following 4 items:

    name (a `str`):
        the name of the item
    elementTypeName (a `str`):
        the suffix of a ``setX`` method name
        which is appropriate for the data type. For example integer
        data has ``elementTypeName="Int"` which corresponds to
        the ``setInt`` method.
    value
        the data for the item, in a form compatible
        with the set method named by ``elementTypeName``
    comment (a `str`): the comment. This item is only present
        if ``container`` is a PropertyList.

Definition at line 75 of file propertyContainerContinued.py.

75 def getPropertyListState(container, asLists=False):
76  """Get the state of a PropertyList in a form that can be pickled.
77 
78  Parameters
79  ----------
80  container : `PropertyList`
81  The property container.
82  asLists : `bool`, optional
83  If False, the default, `tuple` will be used for the contents. If true
84  a `list` will be used.
85 
86  Returns
87  -------
88  state : `list` of `tuple` or `list` of `list`
89  The state, as a list of tuples (or lists), each of which contains
90  the following 4 items:
91 
92  name (a `str`):
93  the name of the item
94  elementTypeName (a `str`):
95  the suffix of a ``setX`` method name
96  which is appropriate for the data type. For example integer
97  data has ``elementTypeName="Int"` which corresponds to
98  the ``setInt`` method.
99  value
100  the data for the item, in a form compatible
101  with the set method named by ``elementTypeName``
102  comment (a `str`): the comment. This item is only present
103  if ``container`` is a PropertyList.
104  """
105  sequence = list if asLists else tuple
106  return [sequence((name, _propertyContainerElementTypeName(container, name),
107  _propertyContainerGet(container, name, returnStyle=ReturnStyle.AUTO),
108  container.getComment(name)))
109  for name in container.getOrderedNames()]
110 
111 

◆ getPropertySetState()

def lsst.daf.base.propertyContainer.propertyContainerContinued.getPropertySetState (   container,
  asLists = False 
)
Get the state of a PropertySet in a form that can be pickled.

Parameters
----------
container : `PropertySet`
    The property container.
asLists : `bool`, optional
    If False, the default, `tuple` will be used for the contents. If true
    a `list` will be used.

Returns
-------
state : `list` of `tuple` or `list` of `list`
    The state, as a list of tuples (or lists), each of which contains
    the following 3 items:

    name (a `str`)
        the name of the item
    elementTypeName (a `str`)
        the suffix of a ``setX`` method name
        which is appropriate for the data type. For example integer
        data has ``elementTypeName="Int"` which corresponds to
        the ``setInt`` method.
    value
        the data for the item, in a form compatible
        with the set method named by ``elementTypeName``

Definition at line 40 of file propertyContainerContinued.py.

40 def getPropertySetState(container, asLists=False):
41  """Get the state of a PropertySet in a form that can be pickled.
42 
43  Parameters
44  ----------
45  container : `PropertySet`
46  The property container.
47  asLists : `bool`, optional
48  If False, the default, `tuple` will be used for the contents. If true
49  a `list` will be used.
50 
51  Returns
52  -------
53  state : `list` of `tuple` or `list` of `list`
54  The state, as a list of tuples (or lists), each of which contains
55  the following 3 items:
56 
57  name (a `str`)
58  the name of the item
59  elementTypeName (a `str`)
60  the suffix of a ``setX`` method name
61  which is appropriate for the data type. For example integer
62  data has ``elementTypeName="Int"` which corresponds to
63  the ``setInt`` method.
64  value
65  the data for the item, in a form compatible
66  with the set method named by ``elementTypeName``
67  """
68  names = container.names(topLevelOnly=True)
69  sequence = list if asLists else tuple
70  return [sequence((name, _propertyContainerElementTypeName(container, name),
71  _propertyContainerGet(container, name, returnStyle=ReturnStyle.AUTO)))
72  for name in names]
73 
74 

◆ setPropertyListState()

def lsst.daf.base.propertyContainer.propertyContainerContinued.setPropertyListState (   container,
  state 
)
Restore the state of a PropertyList, in place.

Parameters
----------
container : `PropertyList`
    The property container whose state is to be restored.
    It should be empty to start with and is updated in place.
state : `list`
    The state, as returned by ``getPropertyListState``

Definition at line 130 of file propertyContainerContinued.py.

130 def setPropertyListState(container, state):
131  """Restore the state of a PropertyList, in place.
132 
133  Parameters
134  ----------
135  container : `PropertyList`
136  The property container whose state is to be restored.
137  It should be empty to start with and is updated in place.
138  state : `list`
139  The state, as returned by ``getPropertyListState``
140  """
141  for name, elemType, value, comment in state:
142  getattr(container, "set" + elemType)(name, value, comment)
143 
144 

◆ setPropertySetState()

def lsst.daf.base.propertyContainer.propertyContainerContinued.setPropertySetState (   container,
  state 
)
Restore the state of a PropertySet, in place.

Parameters
----------
container : `PropertySet`
    The property container whose state is to be restored.
    It should be empty to start with and is updated in place.
state : `list`
    The state, as returned by `getPropertySetState`

Definition at line 112 of file propertyContainerContinued.py.

112 def setPropertySetState(container, state):
113  """Restore the state of a PropertySet, in place.
114 
115  Parameters
116  ----------
117  container : `PropertySet`
118  The property container whose state is to be restored.
119  It should be empty to start with and is updated in place.
120  state : `list`
121  The state, as returned by `getPropertySetState`
122  """
123  for name, elemType, value in state:
124  if elemType is not None:
125  getattr(container, "set" + elemType)(name, value)
126  else:
127  raise ValueError(f"Unrecognized values for state restoration: ({name}, {elemType}, {value})")
128 
129