hutch_python.load_conf.load_conf¶
-
hutch_python.load_conf.
load_conf
(conf, hutch_dir=None)¶ Step through the object loading procedure, given a configuration.
The procedure is:
Check the configuration for errors
Display the banner by calling
hutch_banner
Use
hutch
key to createhutch.db
importable namespace to stash the objects. This will be literallyhutch.db
if hutch is not provided, or the hutch name e.g.mfx.db
.Create a
RunEngine
,RE
Import
plan_defaults
and include asp
,plans
Create a
daq
object withRE
registered.Create a
scan_pvs
object, and leave itdisabled
.Use
hutch
anddaq_platform
keys to create theelog
object and configure it to match the correct experiment.Use
db
key to load devices from thehappi
beamline database and create ahutch_beampath
object fromlightpath
Use
hutch
key to load detector objects from thecamviewer
configuration file.Use
load
key to bring up the user’sbeamline
modulesUse
experiment
key to select the current experimentIf
experiment
was missing, autoselect experiment usinghutch
key
Use current experiment to load experiment objects from questionnaire
Use current experiment to load experiment file
If a conf key is missing, we’ll note it in a
logger.info
message. If an extra conf entry is found, we’ll note it in alogger.warning
message. If an automatically selected file is missing, we’ll note it in alogger.info
message. All other errors will be noted in a logger.error message.- Parameters
conf (
dict
) –dict
interpretation of the original yaml filehutch_dir (
Path
orstr
, optional) –Path
object that points to the hutch’s launch directory. This is the directory that includes theexperiments
directory and a hutchname directory e.g.mfx
If this is missing, we’ll be unable to write thedb.txt
file, do relative filepath database selection forhappi
, or establish a preset positions directory.
- Returns
objs – See the return value of
load
- Return type
dict{str: object}