from dataclasses import dataclass
from datetime import datetime

@dataclass
class PlantState:
  timestamp: datetime
  source: str

  cpu_running: bool
  
  unterteil_faehrt_aus: bool
  unterteil_faehrt_ein: bool
  auswerfer_1_heben: bool
  auswerfer_1_senken: bool
  auswerfer_2_heben: bool
  auswerfer_2_senken: bool
  abdruecker_seitenteil_links_einfahren: bool
  abdruecker_seitenteil_links_ausfahren: bool

  abdruecker_seitenteil_rechts_einfahren: bool
  abdruecker_seitenteil_rechts_ausfahren: bool
  rolltor_schliessen: bool
  rolltor_oeffnen: bool
  gaswagen_ausfahren: bool
  gaswagen_einfahren: bool
  schwenkplatte_abklappen: bool
  schwenkplatte_einklappen: bool

  losteil_1_unterteil_einfahren: bool
  losteil_1_unterteil_ausfahren: bool
  losteil_2_einfahren: bool
  losteil_2_ausfahren: bool
  losteil_3_einfahren: bool
  losteil_3_ausfahren: bool
  losteil_4_einfahren: bool
  losteil_4_ausfahren: bool

  losteil_5_einfahren: bool
  losteil_5_ausfahren: bool
  seitenteil_links_schliessen: bool
  seitenteil_rechts_schliessen: bool
  seitenteil_links_und_rechts_oeffnen: bool
  sandschleuse_schliessen: bool
  sandschleuse_oeffnen: bool
  sandmessung_3_wege_ventil_schliessen: bool
  
  sandmessung_3_wege_ventil_oeffnen: bool
  schuss: bool
  hubtisch_senken: bool
  hubtisch_heben: bool
  oberteil_heben: bool
  oberteil_senken: bool

  series = "plant"