FormatterFactory¶
-
class
lsst.daf.butler.FormatterFactory¶ Bases:
objectFactory for
Formatterinstances.Methods Summary
getFormatter(entity)Get a new formatter instance. getFormatterWithMatch(entity)Get a new formatter instance along with the matching registry key. getLookupKeys()Retrieve the look up keys for all the registry entries. normalizeDimensions(universe)Normalize formatter lookups that use dimensions. registerFormatter(type_, formatter)Register a Formatter.registerFormatters(config[, universe])Bulk register formatters from a config. Methods Documentation
-
getFormatter(entity)¶ Get a new formatter instance.
Parameters: - entity :
DatasetRef,DatasetTypeorStorageClass, orstr Entity to use to determine the formatter to return.
StorageClasswill be used as a last resort ifDatasetReforDatasetTypeinstance is provided. Supports instrument override if aDatasetRefis provided configured with aninstrumentvalue for the data ID.
Returns: - formatter :
Formatter An instance of the registered formatter.
- entity :
-
getFormatterWithMatch(entity)¶ Get a new formatter instance along with the matching registry key.
Parameters: - entity :
DatasetRef,DatasetTypeorStorageClass, orstr Entity to use to determine the formatter to return.
StorageClasswill be used as a last resort ifDatasetReforDatasetTypeinstance is provided. Supports instrument override if aDatasetRefis provided configured with aninstrumentvalue for the data ID.
Returns: - entity :
-
getLookupKeys()¶ Retrieve the look up keys for all the registry entries.
Returns:
-
normalizeDimensions(universe)¶ Normalize formatter lookups that use dimensions.
Parameters: - universe :
DimensionUniverse The set of all known dimensions. If
None, returns without action.
Raises: - ValueError
Raised if a key exists where a dimension is not part of the
universe.
Notes
Goes through all registered formatters, and for keys that include dimensions, rewrites those keys to use a verified set of dimensions.
Returns without action if the formatter keys have already been normalized.
- universe :
-
registerFormatter(type_, formatter)¶ Register a
Formatter.Parameters: - type_ :
LookupKey,strorStorageClassorDatasetType Type for which this formatter is to be used. If a
LookupKeyis not provided, one will be constructed from the supplied string or by using thenameproperty of the supplied entity.- formatter :
str Identifies a
Formattersubclass to use for reading and writing Datasets of this type.
Raises: - ValueError
Raised if the formatter does not name a valid formatter type.
- type_ :
-
registerFormatters(config, universe=None)¶ Bulk register formatters from a config.
Parameters: - config :
Config formatterssection of a configuration.- universe :
DimensionUniverse, optional The set of all known dimensions. If not
None, any look up keys involving dimensions will be normalized. The normalization flag will be cleared each time this method is called without a universe.
Notes
The configuration can include one level of hierarchy where an instrument-specific section can be defined to override more general template specifications. This is represented in YAML using a key of form
instrument<name>which can then define templates that will be returned if aDatasetRefcontains a matching instrument name in the data ID.The config is parsed using the function
processLookupConfigs.- config :
-