TopologicalFamily¶
- class lsst.daf.butler.TopologicalFamily(name: str, space: TopologicalSpace)¶
Bases:
ABC
A grouping of
TopologicalRelationshipEndpoint
objects.These regions form a hierarchy in which one endpoint’s rows always contain another’s in a predefined way.
This hierarchy means that endpoints in the same family do not generally have to be related using (e.g.) overlaps; instead, the regions from one “best” endpoint from each family are related to the best endpoint from each other family in a query.
- Parameters:
- name
str
Unique string identifier for this family.
- space
TopologicalSpace
Space in which the regions of this family live.
- name
Methods Summary
choose
(dimensions)Select the best member of this family to use.
make_column_reference
(endpoint)Create a column reference to the generalized region column for the given endpoint.
Methods Documentation
- abstract choose(dimensions: DimensionGroup) TopologicalRelationshipEndpoint ¶
Select the best member of this family to use.
These are to be used in a query join or data ID when more than one is present.
Usually this should correspond to the most fine-grained region.
- Parameters:
- dimensions
DimensionGroup
Dimensions to choose from, if this is a dimension-based topological family.
- dimensions
- Returns:
- best
TopologicalRelationshipEndpoint
The best endpoint from this family for these dimensions.
- best
- abstract make_column_reference(endpoint: TopologicalRelationshipEndpoint) ColumnReference ¶
Create a column reference to the generalized region column for the given endpoint.
- Parameters:
- endpoint
TopologicalRelationshipEndpoint
Endpoint to create a column reference to.
- endpoint
- Returns:
- column
queries.tree.ColumnReference
Column reference.
- column