1# Licensed under the LGPL: https://www.gnu.org/licenses/old-licenses/lgpl-2.1.en.html
2# For details: https://github.com/pylint-dev/astroid/blob/main/LICENSE
3# Copyright (c) https://github.com/pylint-dev/astroid/blob/main/CONTRIBUTORS.txt
4
5"""Astroid hooks for scipy.signal module."""
6from astroid.brain.helpers import register_module_extender
7from astroid.builder import parse
8from astroid.manager import AstroidManager
9
10
11def scipy_signal():
12 return parse(
13 """
14 # different functions defined in scipy.signals
15
16 def barthann(M, sym=True):
17 return numpy.ndarray([0])
18
19 def bartlett(M, sym=True):
20 return numpy.ndarray([0])
21
22 def blackman(M, sym=True):
23 return numpy.ndarray([0])
24
25 def blackmanharris(M, sym=True):
26 return numpy.ndarray([0])
27
28 def bohman(M, sym=True):
29 return numpy.ndarray([0])
30
31 def boxcar(M, sym=True):
32 return numpy.ndarray([0])
33
34 def chebwin(M, at, sym=True):
35 return numpy.ndarray([0])
36
37 def cosine(M, sym=True):
38 return numpy.ndarray([0])
39
40 def exponential(M, center=None, tau=1.0, sym=True):
41 return numpy.ndarray([0])
42
43 def flattop(M, sym=True):
44 return numpy.ndarray([0])
45
46 def gaussian(M, std, sym=True):
47 return numpy.ndarray([0])
48
49 def general_gaussian(M, p, sig, sym=True):
50 return numpy.ndarray([0])
51
52 def hamming(M, sym=True):
53 return numpy.ndarray([0])
54
55 def hann(M, sym=True):
56 return numpy.ndarray([0])
57
58 def hanning(M, sym=True):
59 return numpy.ndarray([0])
60
61 def impulse2(system, X0=None, T=None, N=None, **kwargs):
62 return numpy.ndarray([0]), numpy.ndarray([0])
63
64 def kaiser(M, beta, sym=True):
65 return numpy.ndarray([0])
66
67 def nuttall(M, sym=True):
68 return numpy.ndarray([0])
69
70 def parzen(M, sym=True):
71 return numpy.ndarray([0])
72
73 def slepian(M, width, sym=True):
74 return numpy.ndarray([0])
75
76 def step2(system, X0=None, T=None, N=None, **kwargs):
77 return numpy.ndarray([0]), numpy.ndarray([0])
78
79 def triang(M, sym=True):
80 return numpy.ndarray([0])
81
82 def tukey(M, alpha=0.5, sym=True):
83 return numpy.ndarray([0])
84 """
85 )
86
87
88def register(manager: AstroidManager) -> None:
89 register_module_extender(manager, "scipy.signal", scipy_signal)