labscheduler.sila_server.generated.schedulingservice.schedulingservice_base module

class labscheduler.sila_server.generated.schedulingservice.schedulingservice_base.SchedulingServiceBase(parent_server: Server)[source]

Bases: FeatureImplementationBase, ABC

abstractmethod ComputeSchedule(WorkflowGraph: Any, MaxComputationTime: float, *, metadata: MetadataDict, instance: ObservableCommandInstance) ComputeSchedule_Responses[source]

Takes a workflow graph (see parameter description) and computes a schedule for the currently configured lab

environment(LabConfigurationController) with the currently selected algorithm. You have to give the maximum computation time.

param WorkflowGraph:

The workflow graph of an experiment in the required SiLA structure.

param MaxComputationTime:

Maximum computation time in seconds

param metadata:

The SiLA Client Metadata attached to the call

param instance:

The command instance, enabling sending status updates to subscribed clients

return:
  • Result: Returns the computed schedule together with a string whether the schedule is optimal, feasible or infeasible.

ComputeSchedule_default_lifetime_of_execution: timedelta | None
abstractmethod SelectAlgorithm(AlgorithmName: str, *, metadata: MetadataDict) SelectAlgorithm_Responses[source]

Selects the algorithm to be used in the ComputeSchedule command

Parameters:
  • AlgorithmName – Name of the Algorithm

  • metadata – The SiLA Client Metadata attached to the call

_abc_impl = <_abc._abc_data object>
abstractmethod get_AvailableAlgorithms(*, metadata: MetadataDict) List[Any][source]

List of algorithm info for all available algorithms

Parameters:

metadata – The SiLA Client Metadata attached to the call

Returns:

List of algorithm info for all available algorithms

abstractmethod get_CurrentAlgorithm(*, metadata: MetadataDict) Any[source]

The currently selected algorithm

Parameters:

metadata – The SiLA Client Metadata attached to the call

Returns:

The currently selected algorithm

parent_server: Server

SiLA Server serving this feature implementation