Initial setup adding classes for channels and cells

This commit is contained in:
William Young
2025-06-15 10:43:50 -05:00
parent f7abc5248b
commit f8f10e358f
6 changed files with 162 additions and 3 deletions

View File

@@ -31,6 +31,8 @@ class KindMapClass(metaclass=SingletonType):
asio: tuple
insert: int
composite: int
channels: int
cells: int
@property
def phys_in(self) -> int:
@@ -63,6 +65,14 @@ class KindMapClass(metaclass=SingletonType):
@property
def num_bus_levels(self) -> int:
return 8 * (self.phys_out + self.virt_out)
@property
def num_bus_channels(self) -> int:
return self.channels
@property
def num_bus_cells(self) -> int:
return self.cells
def __str__(self) -> str:
return self.name.capitalize()
@@ -76,6 +86,8 @@ class BasicMap(KindMapClass):
asio: tuple = (0, 0)
insert: int = 0
composite: int = 0
channels: int = 8
cells: int = 7
@dataclass(frozen=True)
@@ -86,6 +98,8 @@ class BananaMap(KindMapClass):
asio: tuple = (6, 8)
insert: int = 22
composite: int = 8
channels: int = 9
cells: int = 7
@dataclass(frozen=True)
@@ -96,6 +110,8 @@ class PotatoMap(KindMapClass):
asio: tuple = (10, 8)
insert: int = 34
composite: int = 8
channels: int = 0
cells: int = 0
def kind_factory(kind_id):