Developer Guide

The MTRotator CSC is implemented using ts_salobj and ts_hexrotcom.

API

The primary class is:

lsst.ts.mtrotator Package

Functions

command_mtrotator()

Run the MTRotator commander.

run_mtrotator()

Run the MTRotator CSC.

Classes

CommandCode(value[, names, module, ...])

Values for Command.code.

Config

Configuration: rotConfigTelemetryStreamStructure_t in Moog code.

MockMTRotatorController(log[, port, ...])

Mock MT rotator controller that talks over TCP/IP.

RotatorCommander(enable)

Command the MTRotator CSC from the command-line.

RotatorCsc([config_dir, initial_state, ...])

MTRotator CSC.

SetEnabledSubstateParam(value[, names, ...])

Enabled substate parameters.

Telemetry

Telemetry: rotTelemetryStreamStructure_t in Moog code.

Class Inheritance Diagram

Inheritance diagram of lsst.ts.mtrotator.enums.CommandCode, lsst.ts.mtrotator.structs.Config, lsst.ts.mtrotator.mock_controller.MockMTRotatorController, lsst.ts.mtrotator.rotator_commander.RotatorCommander, lsst.ts.mtrotator.rotator_csc.RotatorCsc, lsst.ts.mtrotator.enums.SetEnabledSubstateParam, lsst.ts.mtrotator.structs.Telemetry

Build and Test

This is a pure python package. There is nothing to build except the documentation.

make_idl_files.py MTRotator
setup -r .
pytest -v  # to run tests
package-docs clean; package-docs build  # to build the documentation

Contributing

ts_mtrotator is developed at https://github.com/lsst-ts/ts_mtrotator. You can find Jira issues for this package using labels=ts_mtrotator..