Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 from .core import EventState
00011 from .core import OperatableStateMachine, JumpableStateMachine, SilentStateMachine, LockableStateMachine, ConcurrencyContainer, PriorityContainer
00012
00013 from .behavior import Behavior
00014
00015 from .behavior_library import BehaviorLibrary
00016
00017 from .logger import Logger
00018
00019
00020 class Autonomy:
00021 """
00022 Provides constants for the available required Autonomy Levels.
00023 """
00024
00025 Inherit = 0
00026 """
00027 Use this whenever you want to rely on an already defined level of autonomy
00028 Typical situations: Outcomes of a contained state machine or behavior, outcome of the input request state
00029 """
00030
00031 Off = 0
00032 """
00033 Use this when no level of autonomy is required, the Autonomy Level needs to be at least 'Off'.
00034 Typical situations: Outcomes that report internal software errors or thrown exceptions.
00035 """
00036
00037 Low = 1
00038 """
00039 Use this for reliable decisions that only need validation in the 'low' autonomy mode.
00040 """
00041
00042 High = 2
00043 """
00044 Use this for more important or high level decisions that will only be executed autonomously when in full autonomy and need validation in the 'high' autonomy mode.
00045 """
00046
00047 Full = 3
00048 """
00049 Use this for outcomes that always need an operator input.
00050 A use of this level is not recommended.
00051 """
00052
00053
00054
00055
00056
00057
00058
00059
00060
00061
00062
00063
00064
00065