eive-tmtc/tmtc/acs_subsystem.py

43 lines
1022 B
Python
Raw Normal View History

2022-10-04 14:12:33 +02:00
import enum
from config.definitions import CustomServiceList
from tmtccmd.config.tmtc import (
tmtc_definitions_provider,
TmtcDefinitionWrapper,
OpCodeEntry,
)
from tmtccmd.tc import service_provider
from tmtccmd.tc.decorator import ServiceProviderParams
class OpCodes(str, enum.Enum):
OFF = "off"
SAFE = "safe"
IDLE = "idle"
class Info(str, enum.Enum):
OFF = "Off Command"
SAFE = "Safe Mode Command"
IDLE = "Idle Mode Command"
@service_provider(CustomServiceList.ACS_SS.value)
def build_acs_subsystem_cmd(p: ServiceProviderParams):
op_code = p.op_code
if op_code == OpCodes.OFF:
pass
if op_code == OpCodes.SAFE:
pass
if op_code == OpCodes.IDLE:
pass
@tmtc_definitions_provider
def add_acs_subsystem_cmds(defs: TmtcDefinitionWrapper):
oce = OpCodeEntry()
oce.add(OpCodes.OFF, Info.OFF)
oce.add(OpCodes.SAFE, Info.SAFE)
oce.add(OpCodes.IDLE, Info.IDLE)
defs.add_service(CustomServiceList.ACS_SS, "ACS Subsystem", oce)