brisonus_app_eq/persistence/models.py

37 lines
679 B
Python

from dataclasses import dataclass, asdict
from typing import Dict, List, Any, Optional
from datetime import datetime
@dataclass
class FilterConfig:
type: str
frequency: float
q: float
gain: float
slope: int
enabled: bool
@dataclass
class ChannelConfig:
delay_data: float
vol_data: float
mix_left_data: float
mix_right_data: float
filters: List[FilterConfig]
@dataclass
class ParamConfig:
name: str
created_at: str
description: str
channels: Dict[int, ChannelConfig]
@dataclass
class ProjectData:
name: str
created_at: str
last_modified: str
description: str
params: Dict[str, ParamConfig]