LSST Applications  21.0.0-147-g0e635eb1+1acddb5be5,22.0.0+052faf71bd,22.0.0+1ea9a8b2b2,22.0.0+6312710a6c,22.0.0+729191ecac,22.0.0+7589c3a021,22.0.0+9f079a9461,22.0.1-1-g7d6de66+b8044ec9de,22.0.1-1-g87000a6+536b1ee016,22.0.1-1-g8e32f31+6312710a6c,22.0.1-10-gd060f87+016f7cdc03,22.0.1-12-g9c3108e+df145f6f68,22.0.1-16-g314fa6d+c825727ab8,22.0.1-19-g93a5c75+d23f2fb6d8,22.0.1-19-gb93eaa13+aab3ef7709,22.0.1-2-g8ef0a89+b8044ec9de,22.0.1-2-g92698f7+9f079a9461,22.0.1-2-ga9b0f51+052faf71bd,22.0.1-2-gac51dbf+052faf71bd,22.0.1-2-gb66926d+6312710a6c,22.0.1-2-gcb770ba+09e3807989,22.0.1-20-g32debb5+b8044ec9de,22.0.1-23-gc2439a9a+fb0756638e,22.0.1-3-g496fd5d+09117f784f,22.0.1-3-g59f966b+1e6ba2c031,22.0.1-3-g849a1b8+f8b568069f,22.0.1-3-gaaec9c0+c5c846a8b1,22.0.1-32-g5ddfab5d3+60ce4897b0,22.0.1-4-g037fbe1+64e601228d,22.0.1-4-g8623105+b8044ec9de,22.0.1-5-g096abc9+d18c45d440,22.0.1-5-g15c806e+57f5c03693,22.0.1-7-gba73697+57f5c03693,master-g6e05de7fdc+c1283a92b8,master-g72cdda8301+729191ecac,w.2021.39
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