64 def run(self, exposure, sourceCat, matches=None, isStarField=None):
65 """Select stars and set a flag field True for stars in the input catalog.
69 exposure : `lsst.afw.image.Exposure`
70 the exposure containing the sources
71 sourceCat : `lsst.afw.table.SourceCatalog`
72 catalog of sources that may be stars
73 matches : `lsst.afw.table.ReferenceMatchVector` or None
74 astrometric matches; ignored by this star selector. Some star selectors
75 will ignore this argument, others may require it. See the
76 usesMatches class variable.
78 name of flag field to set True for stars, or None to not set a field;
79 the field is left unchanged for non-stars
83 struct : `lsst.pipe.base.Struct`
84 Result struct containing:
86 - starCat catalog of stars that were selected as stars and successfuly made into PSF candidates
87 (a subset of sourceCat whose records are shallow copies)
89 result = self.
selectStars(exposure=exposure, sourceCat=sourceCat, matches=matches)
91 if isStarField
is not None:
92 isStarKey = sourceCat.schema[isStarField].asKey()
93 for star
in result.starCat:
94 star.set(isStarKey,
True)
96 return pipeBase.Struct(starCat=result.starCat)