DatasetStore#

class DatasetStore(*args)#

Bases: MutableMapping[str, _V]

Mapping of registered Datasets.

Datasets classes are stored using their unique ID, or SHORTNAME if not defined. They can be retrieved using ID or SHORTNAME, as preferred.

Parameters:

args (_V | str)

__contains__(key)#

Check registered IDs and Shortnames.

Parameters:

key (Any)

Return type:

bool

__delitem__(key)#

Delete a dataset.

Parameters:

key (str)

__getitem__(key)#

Return DataManagerBase subclass with this ID or SHORTNAME.

Import the dataset if registered as an import string.

Parameters:

key (str)

Return type:

_V

__init__(*args)#
Parameters:

args (_V | str)

__iter__()#

Iterate over datasets.

Return type:

Iterator[str]

__len__()#

Return number of datasets.

Return type:

int

__repr__()#

Return repr(self).

Return type:

str

__setitem__(key, value)#

Automatically adds shortcuts if value is a Dataset.

Parameters:
__str__()#

Return str(self).

Return type:

str

__weakref__#

list of weak references to the object

_get_id(key)#

Get ID, resolve if key is a shortname.

Parameters:

key (str)

Return type:

str

add(ds, name=None)#

Register a Dataset subclass.

Will register it under: - name if supplied - Dataset.ID if defined - Dataset.SHORTNAME if defined

If the SHORTNAME attribute is defined, an alias will be stored in DatasetStore.shortnames, and the dataset can either be accessed with its ID or shortname.

Parameters:
  • ds (_V | str) – The dataset class to register, or a fully qualified import string. The dataset would then be imported when accessed.

  • name (str | None) – Use this instead of the ID.

get_no_import(key)#

Retrieve dataset without importing it if a string.

Parameters:

key (str)

Return type:

_V | str

register(name=None)#

Decorator to register a dataset.

Parameters:

name (str | None)

Return type:

Callable[[_V], _V]

shortnames: dict[str, list[str]]#

Mapping of shortnames to dict keys (the ID by default).