TakeRotatedLSSTCam¶
- class lsst.ts.externalscripts.maintel.TakeRotatedLSSTCam(index, descr='Take AOS rotated sequence with LsstCam.')¶
- Bases: - BaseTakeRotated- Take AOS sequences with LSSTCam at different rotator angles. - Parameters:
- indexint
- Index of Script SAL component. 
 
- index
 - Notes - Checkpoints - “Slewing to rotator angle {angle} degrees.”: Before slewing to the angle. 
- “Taking images at rotator angle {angle} degrees.”: Before taking images. 
 - Attributes Summary - Get the checkpoints at which to pause and stop. - Get the group ID (a - str), or "" if not set.- Get the block ID (a - str), or "" if not set.- Abstract method to get OODS. - Get the current state. - Get the name of the current - state.state.- Methods Summary - amain(**kwargs)- Run the script from the command line. - Verify that the telescope and camera are in a feasible state to execute the script. - assert_state(action, states)- Assert that the current state is in - statesand the script is not exiting.- checkpoint([name])- Await this at any "nice" point your script can be paused or stopped. - cleanup()- Perform final cleanup, if any. - close([exception, cancel_start])- Shut down, clean up resources and set done_task done. - Shut down pending tasks. - configure(config)- Configure script. - Handle creating the camera object and waiting remote to start. - Configure the OCPS remote object. - Handle creating MTCS object and waiting for remote to start. - do_configure(data)- Configure the currently loaded script. - do_resume(data)- Resume the currently paused script. - do_run(data)- Run the script and quit. - do_setCheckpoints(data)- Set or clear the checkpoints at which to pause and stop. - do_setGroupId(data)- Set or clear the group_id attribute. - do_setLogLevel(data)- Set logging level. - do_stop(data)- Stop the script. - Get instrument name. - Get obs id from camera obs id server. - Get the configuration schema, combining base class schema with additional properties. - make_from_cmd_line(**kwargs)- Make a script from command-line arguments. - Return the group ID supplemented with a new subgroup. - Context manager to publish appropriate checkpoints with program and reason. - Output the logLevel event. - run()- Override base script run to encapsulate execution with appropriate checkpoints. - Execute script operations. - Save test case to the LFA. - set_metadata(metadata)- Sets script metadata. - set_state([state, reason, keep_old_reason, ...])- Set the script state. - Handle termination signals. - start()- Finish construction. - Additional work after - startbefore fully started.- Take out-of-focus sequence images. - test_case_step([comment])- Context manager to handle test case steps. - Attributes Documentation - camera¶
 - checkpoints¶
- Get the checkpoints at which to pause and stop. - Returns - self.evt_checkpoints.datawhich has these fields:- pause: checkpoints at which to pause, a regular expression
- stop: checkpoints at which to stop, a regular expression
 
 - domain¶
 - oods¶
 - state¶
- Get the current state. - Returns - self.evt_state.data, which has these fields:
 - Methods Documentation - async classmethod amain(**kwargs: Any) None¶
- Run the script from the command line. - Parameters:
- kwargs
- Keyword arguments for the script constructor. Must not include - index. Ignored (other than testing for- index) if the command specifies- --schema.
 
- Raises:
- RuntimeError
- If - kwargsincludes- index.
 
 - Notes - The final return code will be: - 0 if final state is - lsst.ts.xml.enums.Script.ScriptState.DONEor- lsst.ts.xml.enums.Script.ScriptState.STOPPED.
- 1 if final state is anything else, or if script.done_task is an exception (which would be raised by the script’s cleanup code). 
 - Issues a RuntimeWarning if script.done_task is an exception and the final script state is anything other than Failed. This should never happen. 
 - async assert_feasibility() None¶
- Verify that the telescope and camera are in a feasible state to execute the script. 
 - assert_state(action: str, states: Sequence[ScriptState]) None¶
- Assert that the current state is in - statesand the script is not exiting.
 - async checkpoint(name: str = '') None¶
- Await this at any “nice” point your script can be paused or stopped. - Parameters:
- namestr, optional
- Name of checkpoint; “” if it has no name. 
 
- name
- Raises:
 
 - async cleanup() None¶
- Perform final cleanup, if any. - This method is called as the script state is exiting, unless the script had not yet started to run, or the script process is aborted by SIGTERM or SIGKILL. 
 - async close(exception: Exception | None = None, cancel_start: bool = True) None¶
- Shut down, clean up resources and set done_task done. - May be called multiple times. The first call closes the Controller; subsequent calls wait until the Controller is closed. - Subclasses should override - close_tasksinstead of- close, unless you have a good reason to do otherwise.- Parameters:
- exceptionException, optional
- The exception that caused stopping, if any, in which case the - self.done_taskexception is set to this value. Specify- Nonefor a normal exit, in which case the- self.done_taskresult is set to- None.
- cancel_startbool, optional
- Cancel the start task? Leave this true unless calling this from the start task. 
 
- exception
 - Notes - Removes the SAL log handler, calls - close_tasksto stop all background tasks, pauses briefly to allow final SAL messages to be sent, then closes the domain.
 - async close_tasks() None¶
- Shut down pending tasks. Called by - close.- Perform all cleanup other than disabling logging to SAL and closing the domain. 
 - async configure(config)¶
- Configure script. - Parameters:
- configtypes.SimpleNamespace
- Script configuration, as defined by - schema.
 
- config
 
 - async configure_ocps()¶
- Configure the OCPS remote object. 
 - async do_configure(data: BaseMsgType) None¶
- Configure the currently loaded script. - Parameters:
- datacmd_configure.DataType
- Configuration. 
 
- data
- Raises:
- base.ExpectedError
- If - self.state.stateis not- lsst.ts.xml.enums.Script.ScriptState.UNCONFIGURED.
 
 - Notes - This method does the following: - Parse the - configfield as yaml-encoded- dictand validate it (including setting default values).
- Call - configure.
- Set the pause and stop checkpoints. 
- Set the log level if - data.logLevel != 0.
- Call - set_metadata.
- Output the metadata event. 
- Change the script state to - lsst.ts.xml.enums.Script.ScriptState.CONFIGURED.
 
 - async do_resume(data: BaseMsgType) None¶
- Resume the currently paused script. - Parameters:
- datacmd_resume.DataType
- Ignored. 
 
- data
- Raises:
- base.ExpectedError
- If - self.state.stateis not- lsst.ts.xml.enums.Script.ScriptState.PAUSED.
 
 
 - async do_run(data: BaseMsgType) None¶
- Run the script and quit. - The script must have been configured and the group ID set. - Parameters:
- datacmd_run.DataType
- Ignored. 
 
- data
- Raises:
- base.ExpectedError
- If - self.state.stateis not- lsst.ts.xml.enums.Script.ScriptState.CONFIGURED. If- self.group_idis blank.
 
 
 - async do_setCheckpoints(data: BaseMsgType) None¶
- Set or clear the checkpoints at which to pause and stop. - This command is deprecated. Please set the checkpoints using the - configurecommand.- Parameters:
- datacmd_setCheckpoints.DataType
- Names of checkpoints for pausing and stopping, each a single regular expression; “” for no checkpoints, “.*” for all. 
 
- data
- Raises:
- base.ExpectedError
- If - self.state.stateis not one of:- lsst.ts.xml.enums.Script.ScriptState.UNCONFIGURED
- lsst.ts.xml.enums.Script.ScriptState.CONFIGURED
- lsst.ts.xml.enums.Script.ScriptState.RUNNING
- lsst.ts.xml.enums.Script.ScriptState.PAUSED
 
 
 
 - async do_setGroupId(data: BaseMsgType) None¶
- Set or clear the group_id attribute. - The script must be in the Configured state. This command may be called multiple times. It is typically called when the script reaches the top position on the script queue. - Parameters:
- datacmd_setGroupId.DataType
- Group ID, or “” to clear the group ID. 
 
- data
- Raises:
- base.ExpectedError
- If - state.stateis not- lsst.ts.xml.enums.Script.ScriptState.CONFIGURED.
 
 
 - async do_setLogLevel(data: BaseMsgType) None¶
- Set logging level. - Parameters:
- datacmd_setLogLevel.DataType
- Logging level. 
 
- data
 
 - async do_stop(data: BaseMsgType) None¶
- Stop the script. - Parameters:
- datacmd_stop.DataType
- Ignored. 
 
- data
 - Notes - This is a no-op if the script is already exiting. This does not wait for _exit to run. 
 - async get_obs_id() str | None¶
- Get obs id from camera obs id server. - Deprecated:
- This method no longer will generate obs_id values. The obs_id should now be provided by the script queue. 
 - Returns:
- stror None
- Id generated from camera server. 
 
 
 - classmethod get_schema()¶
- Get the configuration schema, combining base class schema with additional properties. 
 - classmethod make_from_cmd_line(**kwargs: Any) BaseScript | None¶
- Make a script from command-line arguments. - Return None if - --schemaspecified.- Parameters:
- kwargs
- Keyword arguments for the script constructor. Must not include - index.
 
- Raises:
- RuntimeError
- If - kwargsincludes- index.
 
 
 - next_supplemented_group_id() str¶
- Return the group ID supplemented with a new subgroup. - The returned string has this format: f”{self.group_id}#{subgroup_id}”, where - subgroup_idis an integer that starts at 1 and is incremented for every call to this method.- Raises:
- RuntimeError
- If there is no group ID. 
 
 
 - program_reason()¶
- Context manager to publish appropriate checkpoints with program and reason. 
 - async run()¶
- Override base script run to encapsulate execution with appropriate checkpoints. 
 - async run_block()¶
- Execute script operations. 
 - async save_test_case() None¶
- Save test case to the LFA. - Deprecated:
- The test_case functionality is deprecated and will be removed. 
 
 - set_metadata(metadata)¶
- Sets script metadata. - Parameters:
- metadatasalobj.type_hints.BaseMsgType
- Script metadata topic. The information is set on the topic directly. 
 
- metadata
 
 - async set_state(state: ScriptState | int | None = None, reason: str | None = None, keep_old_reason: bool = False, force_output: bool = False) None¶
- Set the script state. - Parameters:
- stateScriptStateorint, optional
- New state, or None if no change 
- reasonstr, optional
- Reason for state change. - Nonefor no new reason.
- keep_old_reasonbool
- If true, keep old reason; append the - reasonargument after “;” if it is is a non-empty string. If false replace with- reason, or “” if- reasonis- None.
- force_outputbool, optional
- If true the output even if not changed. 
 
- state
 - Notes - The lastCheckpoint field is set from self.last_checkpoint, and the numCheckpoints field is set from self.num_checkpoints.