DatasetType

class lsst.daf.butler.DatasetType(name, dataUnits, storageClass)

Bases: object

A named category of Datasets that defines how they are organized, related, and stored.

A concrete, final class whose instances represent DatasetTypes. DatasetType instances may be constructed without a Registry, but they must be registered via Registry.registerDatasetType() before corresponding Datasets may be added. DatasetType instances are immutable.

Parameters:
name : str

A string name for the Dataset; must correspond to the same DatasetType across all Registries.

dataUnits : iterable of str

DataUnit names that defines the DatasetRefs corresponding to this DatasetType. The input iterable is copied into a frozenset.

storageClass : StorageClass or str

Instance of a StorageClass or name of StorageClass that defines how this DatasetType is persisted.

Attributes Summary

dataUnits A frozenset of DataUnit names that defines the DatasetRefs corresponding to this DatasetType.
name A string name for the Dataset; must correspond to the same DatasetType across all Registries.
storageClass StorageClass instance that defines how this DatasetType is persisted.

Methods Summary

component() Component name (if defined)
componentTypeName(component) Given a component name, derive the datasetTypeName of that component
isComposite() Boolean indicating whether this DatasetType is a composite type.
nameWithComponent(datasetTypeName, componentName) Form a valid DatasetTypeName from a parent and component.

Attributes Documentation

dataUnits

A frozenset of DataUnit names that defines the DatasetRefs corresponding to this DatasetType.

name

A string name for the Dataset; must correspond to the same DatasetType across all Registries.

storageClass

StorageClass instance that defines how this DatasetType is persisted. Note that if DatasetType was constructed with a name of a StorageClass then Butler has to be initialized before using this property.

Methods Documentation

component()

Component name (if defined)

Returns:
comp : str

Name of component part of DatasetType name. None if this DatasetType is not associated with a component.

componentTypeName(component)

Given a component name, derive the datasetTypeName of that component

Parameters:
component : str

Name of component

Returns:
derived : str

Compound name of this DatasetType and the component.

Raises:
KeyError

Requested component is not supported by this DatasetType.

isComposite()

Boolean indicating whether this DatasetType is a composite type.

Returns:
isComposite : bool

True if this DatasetType is a composite type, False otherwise.

static nameWithComponent(datasetTypeName, componentName)

Form a valid DatasetTypeName from a parent and component.

No validation is performed.

Parameters:
datasetTypeName : str

Base type name.

componentName : str

Name of component.

Returns:
compTypeName : str

Name to use for component DatasetType.