pyicat_plus.utils.sync_types.ExperimentalSession#

class pyicat_plus.utils.sync_types.ExperimentalSession(session_dir, raw_root_dir, raw_data_format, proposal, beamline, session, startdate, search_url, datasets, icat_investigation=None)[source]#

Bases: object

Parameters:
  • session_dir (str)

  • raw_root_dir (str)

  • raw_data_format (str)

  • proposal (str)

  • beamline (str)

  • session (str)

  • startdate (date)

  • search_url (str)

  • datasets (Dict[str, List[Dataset]])

  • icat_investigation (Optional[IcatInvestigation])

DATASET_STATUSES = ('unregistered', 'not_uploaded', 'registered', 'invalid', 'registered_without_files')#
add_dataset(dataset)[source]#
Parameters:

dataset (Dataset)

Return type:

None

classmethod allow_unsupervised_upload(dataset_status)[source]#
Parameters:

dataset_status (str)

Return type:

bool

as_dict()[source]#
Return type:

Dict[str, Any]

beamline: str#
dataset_status_counts()[source]#
Return type:

Dict[str, int]

dataset_statuses()[source]#
Return type:

Set[str]

datasets: Dict[str, List[Dataset]]#
classmethod from_dict(data)[source]#
Parameters:

data (Dict[str, Any])

Return type:

ExperimentalSession

icat_investigation: Optional[IcatInvestigation] = None#
property in_icat_investigation: bool | None#
iter_datasets()[source]#
Return type:

Generator[Dataset, None, None]

pprint()[source]#
Return type:

None

proposal: str#
raw_data_format: str#
raw_root_dir: str#
search_url: str#
session: str#
session_dir: str#
startdate: date#
tabular_data()[source]#
Return type:

Dict[str, str]