GovernorDimensionRestriction¶
- class lsst.daf.butler.registry.summaries.GovernorDimensionRestriction(mapping: NamedKeyDict[GovernorDimension, Set[str]])¶
Bases:
NamedKeyMapping
[GovernorDimension
,AbstractSet
[str
]]A custom mapping that represents a restriction on the values one or more governor dimensions may take in some context.
- Parameters:
- mapping
NamedKeyDict
[GovernorDimension
,Set
[str
]] Mapping from governor dimension to the values it may take. Dimensions not present in the mapping are not constrained at all.
- mapping
Attributes Summary
Return the set of names associated with the keys, in the same order.
Methods Summary
add
(dimension, value)Add a single dimension value to the restriction.
byName
()Return a
Mapping
with names as keys and theself
values.copy
()Return a deep copy of this object.
get
(k[,d])intersection
(*others)Construct a restriction that permits only values permitted by all of the input restrictions.
intersection_update
(other)Update
self
to include only dimension values in bothself
andother
.items
()keys
()makeEmpty
(universe)Construct a
GovernorDimensionRestriction
that allows no values for any governor dimension in the givenDimensionUniverse
.makeFull
()Construct a
GovernorDimensionRestriction
that allows any value for any governor dimension.union
(*others)Construct a restriction that permits any values permitted by any of the input restrictions.
update
(other)Update
self
to include all dimension values in eitherself
orother
.update_extract
(data_id)Update
self
to include all governor dimension values in the given data ID (in addition to those already inself
).values
()Attributes Documentation
- names¶
Methods Documentation
- add(dimension: GovernorDimension, value: str) None ¶
Add a single dimension value to the restriction.
- Parameters:
- dimension
GovernorDimension
Dimension to update.
- value
str
Value to allow for this dimension.
- dimension
- copy() GovernorDimensionRestriction ¶
Return a deep copy of this object.
- Returns:
- copy
GovernorDimensionRestriction
A copy of
self
that can be modified without modifyingself
at all.
- copy
- get(k[, d]) D[k] if k in D, else d. d defaults to None. ¶
- intersection(*others: Mapping[GovernorDimension, Union[str, Iterable[str]]]) GovernorDimensionRestriction ¶
Construct a restriction that permits only values permitted by all of the input restrictions.
- Parameters:
- *others
Mapping
[Dimension
,str
orIterable
[str
] ] Mappings to intersect with
self
. These may be otherGovernorDimensionRestriction
instances or any other kind of mapping from dimension tostr
or iterable ofstr
.- Returns
- ——-
- intersection
GovernorDimensionRestriction
New restriction object that represents the intersection of
self
withothers
.
- *others
- intersection_update(other: Mapping[GovernorDimension, Union[str, Iterable[str]]]) None ¶
Update
self
to include only dimension values in bothself
andother
.- Parameters:
- other
Mapping
[Dimension
,str
orIterable
[str
] ] Mapping to intersect into
self
. This may be anotherGovernorDimensionRestriction
or any other mapping from dimension tostr
or iterable ofstr
.
- other
- items() a set-like object providing a view on D's items ¶
- keys() a set-like object providing a view on D's keys ¶
- classmethod makeEmpty(universe: DimensionUniverse) GovernorDimensionRestriction ¶
Construct a
GovernorDimensionRestriction
that allows no values for any governor dimension in the givenDimensionUniverse
.- Parameters:
- universe
DimensionUniverse
Object that manages all dimensions.
- universe
- Returns:
- restriction
GovernorDimensionRestriction
Restriction instance that maps all governor dimensions to an empty set.
- restriction
- classmethod makeFull() GovernorDimensionRestriction ¶
Construct a
GovernorDimensionRestriction
that allows any value for any governor dimension.- Returns:
- restriction
GovernorDimensionRestriction
Restriction instance that contains no keys, and hence contains allows any value for any governor dimension.
- restriction
- union(*others: Mapping[GovernorDimension, Union[str, Iterable[str]]]) GovernorDimensionRestriction ¶
Construct a restriction that permits any values permitted by any of the input restrictions.
- Parameters:
- *others
Mapping
[Dimension
,str
orIterable
[str
] ] Mappings to union into
self
. These may be otherGovernorDimensionRestriction
instances or any other kind of mapping from dimension tostr
or iterable ofstr
.
- *others
- Returns:
- unioned
GovernorDimensionRestriction
New restriction object that represents the union of
self
withothers
.
- unioned
- update(other: Mapping[GovernorDimension, Union[str, Iterable[str]]]) None ¶
Update
self
to include all dimension values in eitherself
orother
.- Parameters:
- other
Mapping
[Dimension
,str
orIterable
[str
] ] Mapping to union into
self
. This may be anotherGovernorDimensionRestriction
or any other mapping from dimension tostr
or iterable ofstr
.
- other
- update_extract(data_id: DataCoordinate) None ¶
Update
self
to include all governor dimension values in the given data ID (in addition to those already inself
).- Parameters:
- data_id
DataCoordinate
Data ID from which governor dimension values should be extracted. Values for non-governor dimensions are ignored.
- data_id
- values() an object providing a view on D's values ¶