19 lines
385 B
Python
19 lines
385 B
Python
from __future__ import annotations
|
|
|
|
from abc import ABC, abstractmethod
|
|
|
|
from server.telemetry.data import TelemetryData
|
|
|
|
|
|
class BaseParser(ABC):
|
|
@abstractmethod
|
|
def parse(self, data: bytes, addr: tuple[str, int]) -> TelemetryData:
|
|
...
|
|
|
|
@abstractmethod
|
|
def game_id(self) -> str:
|
|
...
|
|
|
|
def supports(self, raw_data: bytes) -> bool:
|
|
return True
|