From 73e539933a909ef0467ea0ea02e7464112afbddf Mon Sep 17 00:00:00 2001 From: yyc12345 Date: Sun, 28 Jun 2026 16:17:23 +0800 Subject: [PATCH] feat: add preset for dataset --- legacy/src/lcr_connector/dataset.py | 85 +++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) diff --git a/legacy/src/lcr_connector/dataset.py b/legacy/src/lcr_connector/dataset.py index 41c33fd..b241371 100644 --- a/legacy/src/lcr_connector/dataset.py +++ b/legacy/src/lcr_connector/dataset.py @@ -72,6 +72,83 @@ class Dataset: legal_lines = filter(lambda line: line != "", (line.strip() for line in f)) return Dataset.from_iterable(legal_lines) + @staticmethod + def resistor_preset() -> "Dataset": + return Dataset.from_iterable( + ( + "100", + "220", + "270", + "390", + "470", + "680", + "1k", + "1.2k", + "1.5k", + "2.2k", + "3.3k", + "4.7k", + "6.8k", + "10k", + "47k", + "100k", + "1M", + ) + ) + + @staticmethod + def capacitor_preset() -> "Dataset": + return Dataset.from_iterable( + ( + "10p", + "22p", + "33p", + "47p", + "68p", + "100p", + "150p", + "220p", + "330p", + "470p", + "560p", + "1u", + "2.2u", + "3.3u", + "4.7u", + "10u", + "22u", + "47u", + "100u", + "220u", + "470u", + ) + ) + + @staticmethod + def inductor_preset() -> "Dataset": + return Dataset.from_iterable( + ( + "0.1u", + "0.15u", + "0.47u", + "0.68u", + "1u", + "1.5u", + "2.2u", + "3.3u", + "4.7u", + "6.8u", + "8.2u", + "10u", + "15u", + "22u", + "33u", + "47u", + "68u", + "100u", + ) + ) + def __save(self) -> Iterator[str]: return map(lambda i: i.str_value, self.__values) @@ -164,6 +241,14 @@ class DatasetCollection: Dataset.from_file(inductor), ) + @staticmethod + def devices_preset() -> "DatasetCollection": + return DatasetCollection( + Dataset.resistor_preset(), + Dataset.capacitor_preset(), + Dataset.inductor_preset(), + ) + def save_iterator(self) -> tuple[Iterator[str], Iterator[str], Iterator[str]]: """ Get the iterator of available standard values for resistor, capacitor and inductor respectively.