flandre/src/config.py

65 lines
1.7 KiB
Python
Raw Normal View History

2025-02-14 11:29:55 +08:00
import dataclasses
import json
2025-01-13 14:21:01 +08:00
from pathlib import Path
2025-02-14 11:29:55 +08:00
from PIL.TiffImagePlugin import SOFTWARE
2025-01-19 18:27:26 +08:00
PLAYBACK_SOCKET_PORT = 5003
PLAYBACK_SOCKET = f'127.0.0.1:{PLAYBACK_SOCKET_PORT}'
2025-02-26 16:22:09 +08:00
LIVE_SOCKET_IP = '11.6.1.71'
2025-01-19 18:27:26 +08:00
LIVE_REP_SOCKET_PORT = 5556
LIVE_SOCKET = f'{LIVE_SOCKET_IP}:5555'
LIVE_REP_SOCKET = f'{LIVE_SOCKET_IP}:{LIVE_REP_SOCKET_PORT}'
2025-01-13 14:21:01 +08:00
VIDEO_HEIGHT = 1920
VIDEO_WIDTH = 1080
2025-02-26 16:22:09 +08:00
SWITCH1_IP = 'c1'
SWITCH1_TOKEN = '7ad51e0016e7a9d22f753d5110f76c7d'
SWITCH2_IP = 'c2'
SWITCH2_TOKEN = 'bf5a7b77a1ba3761ea63fafd8427b7d6'
2025-01-13 14:21:01 +08:00
BASE = Path(__file__).parent.parent
DS = BASE / '@DS'
DOC = BASE / 'doc'
2025-01-19 18:27:26 +08:00
CONFIG = BASE / 'config'
2025-01-13 14:21:01 +08:00
DS.mkdir(exist_ok=True, parents=True)
DOC.mkdir(exist_ok=True, parents=True)
2025-02-20 14:06:23 +08:00
DEVICE_CONFIG = CONFIG / 'device'
IMAGING_CONFIG = CONFIG / 'imaging'
DEVICE_CONFIG.mkdir(exist_ok=True, parents=True)
IMAGING_CONFIG.mkdir(exist_ok=True, parents=True)
# CONFIG.mkdir(exist_ok=True, parents=True)
2025-01-13 14:21:01 +08:00
CONFIG_FOLDER = BASE / 'config'
LAST_CONFIG = BASE / 'config' / 'last_imaging_config.json'
CONFIG_FOLDER.mkdir(exist_ok=True)
2025-02-14 11:29:55 +08:00
SOFTWARE_CONFIG_PATH = BASE / 'software.json'
@dataclasses.dataclass
class SoftwareConfig:
base_dir: Path = DS
@staticmethod
def read_config():
j = json.loads(SOFTWARE_CONFIG_PATH.read_text(encoding='utf-8'))
sc = SoftwareConfig()
sc.base_dir = Path(j['base_dir'])
return sc
def write_config(self):
SOFTWARE_CONFIG_PATH.write_text(json.dumps(dict(
base_dir=self.base_dir.__str__(),
), indent=4), encoding='utf-8')
SOFTWARE_CONFIG = SoftwareConfig()
if SOFTWARE_CONFIG_PATH.exists():
SOFTWARE_CONFIG = SoftwareConfig.read_config()
2025-01-13 14:21:01 +08:00
if __name__ == '__main__':
2025-02-14 11:29:55 +08:00
print(SOFTWARE_CONFIG)