Introduction

Reference Documents

[RD1]
Central Control System Development Standards;
[RD2]
ELT - Technical note on Standard Application Interface and State Machine;

Standard Interface

Standard interface, stdif, is the interface to be used by all components that implement the standard ELT interface and state machine [RD2].

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.

Interfaces

class stdif.StdCmds

Standard interface.

Stop() → String

Stop any ongoing activity.

Returns

A string with information about the execution of the request.

Return type

String

Raises

stdif::ExceptionErr – On error.

Init() → String

Command to request the initialization of the Application. After successful initialization, the Applicaiton will be NotOperational::Ready The Application cannot drive any movement, monitoring is available and it is ready to be Enabled.

Returns

A string with information about the execution of the request.

Return type

String

Raises

stdif::ExceptionErr – On error.

Reset() → String

Command to perform a full reset of the Application and re-enter the NotOperational::NotReady state

Returns

A string with information about the execution of the request.

Return type

String

Raises

stdif::ExceptionErr – On error.

Enable() → String

Command to request to enable the Application, i.e. to allow executing movements. After successful Enable, the Application will be Operational.

Returns

A string with information about the execution of the request.

Return type

String

Raises

stdif::ExceptionErr – On error.

Disable() → String

Command to move back from Operational to NotOperational, stopping and disabling any movement.

Returns

A string with information about the execution of the request.

Return type

String

Raises

stdif::ExceptionErr – On error.

GetState() → String

Command to request the state of the Application, i.e. the complete (for example composite if the state machine has multiple regions) state of the internal state machine

return

A string with information about the execution of the request.

rtype

String

raises stdif::ExceptionErr

On error.

GetStatus() → String

Command to request the “System Status” (to be better defined and dependent on the specific application). For Supervisor applications, the output format shall be:

<aggregated state>;<aggregated substate>

Applications shall report the same through the Status topic.

Returns

Format: “<state>;<substate>”.

Return type

String

Raises

stdif::ExceptionErr – On error.

GetVersion() → String

Returns the Application’s version string.

Returns

A string with information about the execution of the request.

Return type

String

Raises

stdif::ExceptionErr – On error.

Exit() → String

Requests the Application to Exit. The Application shall stop any ongoing activity, go to safe conditions, cleanly shutdown and exit any process. At the end of the Exit, the State as published in the OLDB shall be OFF.

Returns

A string with information about the execution of the request.

Return type

String

Raises

stdif::ExceptionErr – On error.

SetLogLevel(info) → String

Sets the logging level for the Application.

Parameters

info – structure including the level and the logger information.

Returns

A string with information about the execution of the request.

Return type

LogInfo

Raises

stdif::ExceptionErr – On error.

Data Structures

class stdif.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 stdif.State

Provides the current state of the application state machine engine.

source: string

Indicates the name of the application instance updating the topic.

state: string

String having the format returned by the application state machine engine.

class stdif.Status

Defines the topic that shall be used by subsystems to inform supervisors about theirs status. For Supervisor applications, the output format shall be:

<aggregated state>;<aggregated substate>

source: string

Indicates the name of the application instance updating the topic.

status: string

String having the format <state>;<substate>

class stdif.LogInfo

Defines the structure to be passed to the SetLogLevel method.

level: string

String specifying the log level.

logger: string

String specifying the name of the logger.