blob: 32f55c8a109389e1612bae98845e7f1bdd05c32c [file] [log] [blame]
Philipp Le84173f62022-04-19 22:27:12 +02001# SPDX-License-Identifier: MPL-2.0
2# Copyright (c) 2022 Philipp Le <philipp@philipple.de>.
3# This Source Code Form is subject to the terms of the Mozilla Public
4# License, v. 2.0. If a copy of the MPL was not distributed with this
5# file, You can obtain one at https://mozilla.org/MPL/2.0/.
6
7from typing import List, Type
8from . import base
9
Philipp Leb0e45c82022-04-19 22:03:44 +020010from .ch02_phasor import Ch02PhasorWindow
Philipp Le692c01e2022-04-19 22:02:52 +020011from .ch02_fourier import Ch02FourierWindow
Philipp Lec2a590b2022-04-26 21:31:47 +020012from .ch03_ergodic import Ch03ErgodicWindow
Philipp Lee9332bd2022-04-26 21:32:12 +020013from .ch03_cross import Ch03CrossCorrelationWindow
Philipp Lefe80ceb2022-04-26 21:32:27 +020014from .ch03_psd import Ch03PsdWindow
Philipp Le83e96b62022-05-01 17:36:30 +020015from .ch04_sampling import Ch04SamplingWindow
Philipp Leb0e45c82022-04-19 22:03:44 +020016
Philipp Le84173f62022-04-19 22:27:12 +020017
18def get_windows() -> List[Type[base.Window]]:
19 return [
Philipp Leb0e45c82022-04-19 22:03:44 +020020 Ch02PhasorWindow,
Philipp Le692c01e2022-04-19 22:02:52 +020021 Ch02FourierWindow,
Philipp Lec2a590b2022-04-26 21:31:47 +020022 Ch03ErgodicWindow,
Philipp Lee9332bd2022-04-26 21:32:12 +020023 Ch03CrossCorrelationWindow,
Philipp Lefe80ceb2022-04-26 21:32:27 +020024 Ch03PsdWindow,
Philipp Le83e96b62022-05-01 17:36:30 +020025 Ch04SamplingWindow,
Philipp Le84173f62022-04-19 22:27:12 +020026 ]
27
28
29def get_groups() -> List[Type[base.Group]]:
30 return base.get_groups(get_windows())
31
32
33def get_win_of_group(grp: Type[base.Group]) -> List[Type[base.Window]]:
34 return base.get_win_of_group(get_windows(), grp)