23"""Common tasks and idioms performed with the Butler.
26__all__ = [
"dataExists",
"searchDataRefs"]
30 """Find all data references for a partial data ID.
35 The repository to query for data.
37 The type of data references to
return.
39 The level of data ID at which to search. If the empty string, the
40 default level
for ``datasetType`` shall be used.
41 dataId : `lsst.daf.persistence.DataRef`,
or `dict`
from `str` to any
42 Butler identifier naming the data to be retrieved. If ommitted, an
43 unrestricted data ID shall be used.
48 Complete data references matching ``dataId``. Only references to
49 existing data shall be returned.
54 refList = butler.subset(datasetType=datasetType, level=level, dataId=dataId)
57 return [dr
for dr
in refList
if dataExists(dr)]
61 """Determine if data exists at the current level or any data exists at a deeper level.
66 Data reference to test for existence.
71 Return value
is `
True`
if data exists, `
False` otherwise.
73 subDRList = dataRef.subItems()
75 for subDR
in subDRList:
80 return dataRef.datasetExists()
def searchDataRefs(butler, datasetType, level="", dataId=None)