26 from ._base
import Catalog
27 from ._table
import SourceCatalog, SourceTable
29 Catalog.register(
"Source", SourceCatalog)
36 """Return the subset of self for which the parent field equals the
39 In order for this method to return the correct result, it must be
40 sorted by parent (i.e. self.isSorted(SourceTable.getParentKey()) must
41 be True). This is naturally the case with SourceCatalogs produced by
42 the detection and deblending tasks, but it may not be true when
43 concatenating multiple such catalogs.
45 Additional Catalogs or sequences whose elements correspond in order to
46 the records of self (i.e. ``zip(self, *args)`` is valid) will be
47 subset using the same slice object used on self, and these subsets
48 will be returned along with the subset of self.
53 ID of the parent to get children for.
54 args : `~lsst.afw.table.Catalog`
55 Additional catalogs to subset for the childrens to return.
59 children : iterable of `~lsst.afw.table.SourceRecord`
62 if not self.isSorted(SourceTable.getParentKey()):
64 "The table is not sorted by parent, so cannot getChildren")
65 s = self.equal_range(parent, SourceTable.getParentKey())
67 return (self[s],) + tuple(arg[s]
for arg
in args)
72 SourceTable.getCentroidDefinition = deprecate_pybind11(
73 SourceTable.getCentroidDefinition,
74 reason=
'Use `getSchema().getAliasMap().get("slot_Centroid")` instead. To be removed after 20.0.0.')
75 SourceTable.hasCentroidSlot = deprecate_pybind11(
76 SourceTable.hasCentroidSlot,
77 reason=
'Use `getCentroidSlot().isValid()` instead. To be removed after 20.0.0.')
78 SourceTable.getCentroidKey = deprecate_pybind11(
79 SourceTable.getCentroidKey,
80 reason=
'Use `getCentroidSlot().getMeasKey()` instead. To be removed after 20.0.0.')
81 SourceTable.getCentroidErrKey = deprecate_pybind11(
82 SourceTable.getCentroidErrKey,
83 reason=
'Use `getCentroidSlot().getErrKey()` instead. To be removed after 20.0.0.')
84 SourceTable.getCentroidFlagKey = deprecate_pybind11(
85 SourceTable.getCentroidFlagKey,
86 reason=
'Use `getCentroidSlot().getFlagKey()` instead. To be removed after 20.0.0.')
87 SourceTable.getShapeDefinition = deprecate_pybind11(
88 SourceTable.getShapeDefinition,
89 reason=
'Use `getSchema().getAliasMap().get("slot_Shape")` instead. To be removed after 20.0.0.')
90 SourceTable.hasShapeSlot = deprecate_pybind11(
91 SourceTable.hasShapeSlot,
92 reason=
'Use `getShapeSlot().isValid()` instead. To be removed after 20.0.0.')
93 SourceTable.getShapeKey = deprecate_pybind11(
94 SourceTable.getShapeKey,
95 reason=
'Use `getShapeSlot().getMeasKey()` instead. To be removed after 20.0.0.')
96 SourceTable.getShapeErrKey = deprecate_pybind11(
97 SourceTable.getShapeErrKey,
98 reason=
'Use `getShapeSlot().getErrKey()` instead. To be removed after 20.0.0.')
99 SourceTable.getShapeFlagKey = deprecate_pybind11(
100 SourceTable.getShapeFlagKey,
101 reason=
'Use `getShapeSlot().getFlagKey()` instead. To be removed after 20.0.0.')