2023-04-21 00:45:15 +02:00
|
|
|
from dataclasses import dataclass
|
2023-04-23 00:41:21 +02:00
|
|
|
from typing import List, Optional
|
2023-04-21 00:45:15 +02:00
|
|
|
|
2023-04-23 00:41:21 +02:00
|
|
|
from ._battery import Battery
|
2023-04-21 00:45:15 +02:00
|
|
|
from ._cpu import Cpu
|
|
|
|
from ._disk import Disk
|
2023-04-23 00:08:27 +02:00
|
|
|
from ._fan import Fan
|
2023-04-21 00:45:15 +02:00
|
|
|
from ._memory import MemoryStats, SwapStats
|
|
|
|
from ._network import NetworkInterface
|
2023-04-22 22:42:11 +02:00
|
|
|
from ._temperature import Temperature
|
2023-04-21 00:45:15 +02:00
|
|
|
|
|
|
|
|
|
|
|
@dataclass
|
|
|
|
class SystemInfo:
|
|
|
|
"""
|
|
|
|
Aggregate system info dataclass.
|
|
|
|
"""
|
|
|
|
|
|
|
|
cpu: Cpu
|
|
|
|
memory: MemoryStats
|
|
|
|
swap: SwapStats
|
|
|
|
disks: List[Disk]
|
|
|
|
network: List[NetworkInterface]
|
2023-04-22 22:42:11 +02:00
|
|
|
temperature: List[Temperature]
|
2023-04-23 00:08:27 +02:00
|
|
|
fans: List[Fan]
|
2023-04-23 00:41:21 +02:00
|
|
|
battery: Optional[Battery]
|