punchpipe.control.util#

Attributes#

Functions#

get_database_session([get_engine, engine_kwargs])

Sets up a session to connect to the MariaDB punchpipe database

update_file_state(session, file_id, new_state)

load_pipeline_configuration(→ dict)

load_quicklook_scaling(level, product, obscode, path, ...)

write_file(→ None)

match_data_with_file_db_entry(data, file_db_entry_list)

get_files_in_time_window(→ list[punchpipe.control.db.File])

batched(iterable, n)

group_files_by_time(...)

Module Contents#

punchpipe.control.util.DEFAULT_SCALING = (5e-13, 5e-11)#
punchpipe.control.util.get_database_session(get_engine=False, engine_kwargs={})[source]#

Sets up a session to connect to the MariaDB punchpipe database

punchpipe.control.util.update_file_state(session, file_id, new_state)[source]#
punchpipe.control.util.load_pipeline_configuration(path: str = None) dict[source]#
punchpipe.control.util.load_quicklook_scaling(level: str = None, product: str = None, obscode: str = None, path: str = None)[source]#
punchpipe.control.util.write_file(data: ndcube.NDCube, corresponding_file_db_entry, pipeline_config) None[source]#
punchpipe.control.util.match_data_with_file_db_entry(data: ndcube.NDCube, file_db_entry_list)[source]#
punchpipe.control.util.get_files_in_time_window(level: str, file_type: str, obs_code: str, start_time: datetime.datetime, end_time: datetime.datetime, session: sqlalchemy.orm.Session | None) list[punchpipe.control.db.File][source]#
punchpipe.control.util.batched(iterable, n)[source]#
punchpipe.control.util.group_files_by_time(files: list[punchpipe.control.db.File], max_duration_seconds: float = inf, max_per_group: int = inf) list[list[punchpipe.control.db.File]][source]#