Introduction

Reference Documents

[RD1]
Central Control System Development Standards;

SysSup Interface

SysSup interface, supif, is the interface to be used by the IFW System Supervisor. This interface shall be used whenever you want to interact with the supervisor.

This documentation provides an overview of the interface. For data structures only the data members are documented, not the accessors generated by MAL. Similarly names are not fully qualified as it is different across the supported languages.

Constraints

The SysSup interfaces have been defined under the following constraints imposed by CII MAL/RAD:

  • CII MAL does not support optionals. This is huge limitation for a generic software like IFW. Some of the implications is that in some cases a complete structure has to be serialized even in one attribute is needed.

  • RAD can only accepts one parameter for commands. So if a command needs more than one parameter, one should use structs and use the parameters as fields of the struct.

  • CII MAL does not support defaults, this means you need to fill up properly all fields of your structs used as payload for your commands.

Interfaces

class supif.AppCmds

SysSup Command interface.

Recover() String

Command that tries to recover from error state produced by one or more subsystems. It will attempt to bring all subsystems to operational state. You can do the same going back to reset or ready state and coming back to operational.

Returns:

A string with information about the execution of the request.

Return type:

String

Raises:

supif::ExceptionErr – if a failure occurrs.

SubNames() String

Command to get the list of subsystems managed by the server (SysSup).

Returns:

A string with the list of subsystems.

Return type:

String

Raises:

supif::ExceptionErr – if a failure occurrs.

SubStatus(devices) String

Command to get status of one or more subsystems. The status is a list of parameters with their current values.

Parameters:

subsys – strings with the name of device.

Returns:

A string with the list of device parameters.

Return type:

String

Raises:

supif::ExceptionErr – if a failure occurrs.

ReloadConfig() String

Command to reload the server configuration.

Returns:

A string with information about the execution of the request.

Return type:

String

Raises:

supif::ExceptionErr – if a failure occurrs.

SetConfig() String

Command to update the server configuration.

Parameters:

config – configuration in CII Config-Ng format.

Returns:

A string with information about the execution of the request.

Return type:

String

Raises:

supif::ExceptionErr – if a failure occurrs.

GetConfig() String

Command to get actual server configuration. Reply is sent using the CII ConfigNg format (stream).

Returns:

A CII Config-Ng stream with the server configuration.

Return type:

String

Raises:

supif::ExceptionErr – if a failure occurrs.

SetObMode(mode) String

Command to setup observation mode.

Parameters:

mode – observation mode to be setup.

Returns:

A string with information about the execution of the request.

Return type:

String

Raises:

supif::ExceptionErr – if a failure occurrs.

SetOpMode(mode) String

Command to setup operation mode.

Parameters:

mode – operation mode to be setup.

Returns:

A string with information about the execution of the request.

Return type:

String

Raises:

supif::ExceptionErr – if a failure occurrs.

Setup(payload) String

Command to setup subsystem run-time parameters.

Parameters:

payload – vector of run-time configurations to be applied to the subsystems.

Returns:

A string with information about the execution of the request.

Return type:

String

Raises:

supif::ExceptionErr – if a failure occurrs.

SubInit(devices) String

Command for Subsystem direct control (maintenance/troubleshooting) It triggers the subsystem initialisation for one subsystem.

Parameters:

subsys – subsystem name.

Returns:

A string with information about the execution of the request.

Return type:

String

Raises:

supif::ExceptionErr – if a failure occurrs.

SubEnable(devices) String

Command for subsystem direct control (maintenance/troubleshooting) It moves one subsystem to operational state (from state ready).

Parameters:

subsys – subsystem name.

Returns:

A string with information about the execution of the request.

Return type:

String

Raises:

supif::ExceptionErr – if a failure occurrs.

SubDisable(devices) String

Command for subsystem direct control (maintenance/troubleshooting) It moves one subsystem to ready state (from state operational).

Parameters:

subsys – subsystem name.

Returns:

A string with information about the execution of the request.

Return type:

String

Raises:

supif::ExceptionErr – if a failure occurrs.

SubReset(devices) String

Command for subsystem direct control (maintenance/troubleshooting) It triggers the subsystem reset.

Parameters:

subsys – subsystem name.

Returns:

A string with information about the execution of the request.

Return type:

String

Raises:

supif::ExceptionErr – if a failure occurrs.

SetAccess(params) String

Command that changes the access configuration of a subsystem. The params is of type AccessParams.

Parameters:

params – structure that contains the parameters for the command.

Returns:

A string with information about the execution of the request.

Return type:

String

Raises:

supif::ExceptionErr – if a failure occurrs.

Data Structures

class supif.ExceptionErr

Exception class thrown in case an error is encountered while handling a request.

code: int

Exception (error) code allocated to the specific exception; 0 if no code is allocated.

desc: str

Description of the exception (diagnostics).

class supif.AccessParams

Structure for the parameters of the SetAccess Command.

subsystem: string

Subystem name

access: boolean

Access true or false.