starting changing code to new API
This commit is contained in:
58
tmtcc.py
58
tmtcc.py
@ -1,10 +1,21 @@
|
||||
import argparse
|
||||
import logging
|
||||
import sys
|
||||
import traceback
|
||||
from typing import Optional
|
||||
from tmtccmd.config.definitions import CoreModeList
|
||||
|
||||
from spacepackets.ecss import PusVerificator
|
||||
from tmtccmd import get_console_logger, TcHandlerBase
|
||||
from tmtccmd.config.globals import update_global, CoreGlobalIds
|
||||
|
||||
from deps.tmtccmd.tmtccmd.logging.pus import RawTmtcTimedLogWrapper
|
||||
from deps.tmtccmd.tmtccmd.pus import VerificationWrapper
|
||||
from deps.tmtccmd.tmtccmd.tm import SpecificApidHandlerBase, GenericApidHandlerBase
|
||||
from deps.tmtccmd.tmtccmd.utility.tmtc_printer import FsfwTmTcPrinter
|
||||
from tmtccmd.pus import FileSeqCountProvider
|
||||
from tmtccmd.tc import ProcedureHelper, FeedWrapper, TcProcedureType
|
||||
|
||||
try:
|
||||
import spacepackets
|
||||
except ImportError as error:
|
||||
@ -36,8 +47,51 @@ except ImportError as error:
|
||||
from config import __version__
|
||||
from config.definitions import PUS_APID
|
||||
from config.hook_implementations import EiveHookObject
|
||||
from pus_tm.factory_hook import ccsds_tm_handler
|
||||
from pus_tc.tc_packer_hook import pre_tc_send_cb
|
||||
from pus_tm.factory_hook import pus_factory_hook
|
||||
from pus_tc.procedure_packer import pre_tc_send_cb
|
||||
|
||||
|
||||
LOGGER = get_console_logger()
|
||||
|
||||
|
||||
class PusHandler(SpecificApidHandlerBase):
|
||||
def __init__(
|
||||
self,
|
||||
wrapper: VerificationWrapper,
|
||||
printer: FsfwTmTcPrinter,
|
||||
raw_logger: RawTmtcTimedLogWrapper,
|
||||
):
|
||||
super().__init__(PUS_APID, None)
|
||||
self.printer = printer
|
||||
self.verif_wrapper = wrapper
|
||||
self.raw_logger = raw_logger
|
||||
|
||||
def handle_tm(self, packet: bytes, _user_args: any):
|
||||
pus_factory_hook(packet, self.verif_wrapper, self.printer, self.raw_logger)
|
||||
|
||||
|
||||
class UnknownApidHandler(GenericApidHandlerBase):
|
||||
def handle_tm(self, apid: int, _packet: bytes, _user_args: any):
|
||||
LOGGER.warning(f"Packet with unknwon APID {apid} detected")
|
||||
|
||||
|
||||
class TcHandler(TcHandlerBase):
|
||||
def __init__(
|
||||
self,
|
||||
seq_count_provider: FileSeqCountProvider,
|
||||
pus_verificator: PusVerificator,
|
||||
file_logger: logging.Logger,
|
||||
raw_logger: RawTmtcTimedLogWrapper,
|
||||
):
|
||||
super().__init__()
|
||||
self.seq_count_provider = seq_count_provider
|
||||
self.pus_verificator = pus_verificator
|
||||
self.file_logger = file_logger
|
||||
self.raw_logger = raw_logger
|
||||
|
||||
def feed_cb(self, info: ProcedureHelper, wrapper: FeedWrapper):
|
||||
if info.proc_type == TcProcedureType.DEFAULT:
|
||||
handle_default_procedure(info.to_def_procedure(), wrapper)
|
||||
|
||||
|
||||
def tmtcc_pre_args() -> EiveHookObject:
|
||||
|
Reference in New Issue
Block a user