traffic-sign-classifier-robustness-testing / rt_search_based / gui / gui_dataclasses.py
gui_dataclasses.py
Raw
from dataclasses import dataclass
from typing import Any, Iterable, List, Tuple, Dict


@dataclass
class StatisticRow:
    name: str
    values: List[str]


@dataclass
class StatisticsTable:
    column_headers: List[str]
    rows: Dict[str, Dict[str, Any]]


@dataclass
class StrategyResult:
    image_src: str
    area: int
    time: int
    fitness_value: int
    sticker_coords: Tuple[Tuple[int, int], Tuple[int, int]]
    sticker_color: Tuple[int, int, int]


@dataclass
class ComparisonRow:
    id: int
    image_src: str
    results: Iterable[StrategyResult]


@dataclass
class PaginationInfo:
    current_page: int
    last_page: int