fix: type of liba.version in Python2
[liba.git] / liba.pyi
blob27fc302fc810688bebe3374bbca00e58ad227771
1 from typing import Iterable, overload
2 from array import array
4 class i8:
5     @staticmethod
6     def array(o: object) -> array[int]: ...
8 class u8:
9     @staticmethod
10     def array(o: object) -> array[int]: ...
12 class i16:
13     @staticmethod
14     def array(o: object) -> array[int]: ...
16 class u16:
17     @staticmethod
18     def array(o: object) -> array[int]: ...
20 class i32:
21     @staticmethod
22     def array(o: object) -> array[int]: ...
24 class u32:
25     @staticmethod
26     def array(o: object) -> array[int]: ...
27     @staticmethod
28     def sqrt(x: int) -> tuple[int, int]: ...
30 class i64:
31     @staticmethod
32     def array(o: object) -> array[int]: ...
34 class u64:
35     @staticmethod
36     def array(o: object) -> array[int]: ...
37     @staticmethod
38     def sqrt(x: int) -> tuple[int, int]: ...
40 class f32:
41     @staticmethod
42     def array(o: object) -> array[float]: ...
43     @staticmethod
44     @overload
45     def rsqrt(x: Iterable[float]) -> array[float]: ...
46     @staticmethod
47     @overload
48     def rsqrt(x: float) -> float: ...
50 class f64:
51     @staticmethod
52     def array(o: object) -> array[float]: ...
53     @staticmethod
54     @overload
55     def rsqrt(x: Iterable[float]) -> array[float]: ...
56     @staticmethod
57     @overload
58     def rsqrt(x: float) -> float: ...
60 class float_:
61     @staticmethod
62     def array(o: object) -> array[float]: ...
64 class hash:
65     @staticmethod
66     def bkdr(str: bytes, val: int) -> int: ...
68 class crc8:
69     POLY: int
70     INIT: int
71     def __init__(self, poly=POLY, be=False) -> None: ...
72     def __call__(self, data: bytes, init=INIT) -> int: ...
73     @property
74     def table(self) -> array[int]: ...
76 class crc16:
77     POLY: int
78     INIT: int
79     def __init__(self, poly=POLY, be=False) -> None: ...
80     def __call__(self, data: bytes, init=INIT) -> int: ...
81     @property
82     def table(self) -> array[int]: ...
84 class crc32:
85     POLY: int
86     INIT: int
87     def __init__(self, poly=POLY, be=False) -> None: ...
88     def __call__(self, data: bytes, init=INIT) -> int: ...
89     @property
90     def table(self) -> array[int]: ...
92 class crc64:
93     POLY: int
94     INIT: int
95     def __init__(self, poly=POLY, be=False) -> None: ...
96     def __call__(self, data: bytes, init=INIT) -> int: ...
97     @property
98     def table(self) -> array[int]: ...
100 class mf:
101     NUL: int
102     GAUSS: int
103     GAUSS2: int
104     GBELL: int
105     SIG: int
106     DSIG: int
107     PSIG: int
108     TRAP: int
109     TRI: int
110     LINS: int
111     LINZ: int
112     S: int
113     Z: int
114     PI: int
115     @staticmethod
116     @overload
117     def __call__(e: int, x: Iterable[float], a: Iterable[float]) -> array[float]: ...
118     @staticmethod
119     @overload
120     def __call__(e: int, x: float, a: Iterable[float]) -> float: ...
121     @staticmethod
122     @overload
123     def gauss(x: Iterable[float], sigma: float, c: float) -> array[float]: ...
124     @staticmethod
125     @overload
126     def gauss(x: float, sigma: float, c: float) -> float: ...
127     @staticmethod
128     @overload
129     def gauss2(
130         x: Iterable[float], sigma1: float, c1: float, sigma2: float, c2: float
131     ) -> array[float]: ...
132     @staticmethod
133     @overload
134     def gauss2(x: float, sigma1: float, c1: float, sigma2: float, c2: float) -> float: ...
135     @staticmethod
136     @overload
137     def gbell(x: Iterable[float], a: float, b: float, c: float) -> array[float]: ...
138     @staticmethod
139     @overload
140     def gbell(x: float, a: float, b: float, c: float) -> float: ...
141     @staticmethod
142     @overload
143     def sig(x: Iterable[float], a: float, c: float) -> array[float]: ...
144     @staticmethod
145     @overload
146     def sig(x: float, a: float, c: float) -> float: ...
147     @staticmethod
148     @overload
149     def dsig(x: Iterable[float], a1: float, c1: float, a2: float, c2: float) -> array[float]: ...
150     @staticmethod
151     @overload
152     def dsig(x: float, a1: float, c1: float, a2: float, c2: float) -> float: ...
153     @staticmethod
154     @overload
155     def psig(x: Iterable[float], a1: float, c1: float, a2: float, c2: float) -> array[float]: ...
156     @staticmethod
157     @overload
158     def psig(x: float, a1: float, c1: float, a2: float, c2: float) -> float: ...
159     @staticmethod
160     @overload
161     def trap(x: Iterable[float], a: float, b: float, c: float, d: float) -> array[float]: ...
162     @staticmethod
163     @overload
164     def trap(x: float, a: float, b: float, c: float, d: float) -> float: ...
165     @staticmethod
166     @overload
167     def tri(x: Iterable[float], a: float, b: float, c: float) -> array[float]: ...
168     @staticmethod
169     @overload
170     def tri(x: float, a: float, b: float, c: float) -> float: ...
171     @staticmethod
172     @overload
173     def lins(x: Iterable[float], a: float, b: float) -> array[float]: ...
174     @staticmethod
175     @overload
176     def lins(x: float, a: float, b: float) -> float: ...
177     @staticmethod
178     @overload
179     def linz(x: Iterable[float], a: float, b: float) -> array[float]: ...
180     @staticmethod
181     @overload
182     def linz(x: float, a: float, b: float) -> float: ...
183     @staticmethod
184     @overload
185     def s(x: Iterable[float], a: float, b: float) -> array[float]: ...
186     @staticmethod
187     @overload
188     def s(x: float, a: float, b: float) -> float: ...
189     @staticmethod
190     @overload
191     def z(x: Iterable[float], a: float, b: float) -> array[float]: ...
192     @staticmethod
193     @overload
194     def z(x: float, a: float, b: float) -> float: ...
195     @staticmethod
196     @overload
197     def pi(x: Iterable[float], a: float, b: float, c: float, d: float) -> array[float]: ...
198     @staticmethod
199     @overload
200     def pi(x: float, a: float, b: float, c: float, d: float) -> float: ...
202 class pid:
203     OFF: int
204     POS: int
205     INC: int
206     def __init__(self) -> None: ...
207     def kpid(self, kp: float, ki: float, kd: float) -> pid: ...
208     def off(self, set: float, fdb: float) -> float: ...
209     def pos(self, set: float, fdb: float) -> float: ...
210     def inc(self, set: float, fdb: float) -> float: ...
211     def zero(self) -> pid: ...
212     @property
213     def kp(self) -> float: ...
214     @kp.setter
215     def kp(self, kp: float) -> None: ...
216     @property
217     def ki(self) -> float: ...
218     @ki.setter
219     def ki(self, ki: float) -> None: ...
220     @property
221     def kd(self) -> float: ...
222     @kd.setter
223     def kd(self, kd: float) -> None: ...
224     @property
225     def summax(self) -> float: ...
226     @summax.setter
227     def summax(self, summax: float) -> None: ...
228     @property
229     def summin(self) -> float: ...
230     @summin.setter
231     def summin(self, summin: float) -> None: ...
232     @property
233     def outmax(self) -> float: ...
234     @outmax.setter
235     def outmax(self, outmax: float) -> None: ...
236     @property
237     def outmin(self) -> float: ...
238     @outmin.setter
239     def outmin(self, outmin: float) -> None: ...
240     @property
241     def out(self) -> float: ...
242     @property
243     def fdb(self) -> float: ...
244     @property
245     def err(self) -> float: ...
247 class pid_fuzzy:
248     CAP: int
249     CAP_ALGEBRA: int
250     CAP_BOUNDED: int
251     CUP: int
252     CUP_ALGEBRA: int
253     CUP_BOUNDED: int
254     EQU: int
255     def __init__(self) -> None: ...
256     def op(self, op: int) -> pid_fuzzy: ...
257     def rule(
258         self,
259         me: Iterable[Iterable[float]],
260         mec: Iterable[Iterable[float]],
261         mkp: Iterable[Iterable[float]],
262         mki: Iterable[Iterable[float]],
263         mkd: Iterable[Iterable[float]],
264     ) -> pid_fuzzy: ...
265     def set_joint(self, num: int) -> pid_fuzzy: ...
266     def kpid(self, kp: float, ki: float, kd: float) -> pid_fuzzy: ...
267     def off(self, set: float, fdb: float) -> float: ...
268     def pos(self, set: float, fdb: float) -> float: ...
269     def inc(self, set: float, fdb: float) -> float: ...
270     def zero(self) -> pid_fuzzy: ...
271     @property
272     def joint(self) -> int: ...
273     @joint.setter
274     def joint(self, joint: int) -> None: ...
275     @property
276     def kp(self) -> float: ...
277     @kp.setter
278     def kp(self, kp: float) -> None: ...
279     @property
280     def ki(self) -> float: ...
281     @ki.setter
282     def ki(self, ki: float) -> None: ...
283     @property
284     def kd(self) -> float: ...
285     @kd.setter
286     def kd(self, kd: float) -> None: ...
287     @property
288     def summax(self) -> float: ...
289     @summax.setter
290     def summax(self, summax: float) -> None: ...
291     @property
292     def summin(self) -> float: ...
293     @summin.setter
294     def summin(self, summin: float) -> None: ...
295     @property
296     def outmax(self) -> float: ...
297     @outmax.setter
298     def outmax(self, outmax: float) -> None: ...
299     @property
300     def outmin(self) -> float: ...
301     @outmin.setter
302     def outmin(self, outmin: float) -> None: ...
303     @property
304     def out(self) -> float: ...
305     @property
306     def fdb(self) -> float: ...
307     @property
308     def err(self) -> float: ...
309     @property
310     def order(self) -> int: ...
312 class pid_neuron:
313     def __init__(self) -> None: ...
314     def kpid(self, k: float, kp: float, ki: float, kd: float) -> pid_neuron: ...
315     def wpid(self, wp: float, wi: float, wd: float) -> pid_neuron: ...
316     def off(self, set: float, fdb: float) -> float: ...
317     def inc(self, set: float, fdb: float) -> float: ...
318     def zero(self) -> pid_neuron: ...
319     @property
320     def k(self) -> float: ...
321     @k.setter
322     def k(self, k: float) -> None: ...
323     @property
324     def kp(self) -> float: ...
325     @kp.setter
326     def kp(self, kp: float) -> None: ...
327     @property
328     def ki(self) -> float: ...
329     @ki.setter
330     def ki(self, ki: float) -> None: ...
331     @property
332     def kd(self) -> float: ...
333     @kd.setter
334     def kd(self, kd: float) -> None: ...
335     @property
336     def wp(self) -> float: ...
337     @wp.setter
338     def wp(self, wp: float) -> None: ...
339     @property
340     def wi(self) -> float: ...
341     @wi.setter
342     def wi(self, wi: float) -> None: ...
343     @property
344     def wd(self) -> float: ...
345     @wd.setter
346     def wd(self, wd: float) -> None: ...
347     @property
348     def summax(self) -> float: ...
349     @summax.setter
350     def summax(self, summax: float) -> None: ...
351     @property
352     def summin(self) -> float: ...
353     @summin.setter
354     def summin(self, summin: float) -> None: ...
355     @property
356     def outmax(self) -> float: ...
357     @outmax.setter
358     def outmax(self, outmax: float) -> None: ...
359     @property
360     def outmin(self) -> float: ...
361     @outmin.setter
362     def outmin(self, outmin: float) -> None: ...
363     @property
364     def out(self) -> float: ...
365     @property
366     def fdb(self) -> float: ...
367     @property
368     def err(self) -> float: ...
369     @property
370     def ec(self) -> float: ...
372 @overload
373 def poly_eval(x: Iterable[float], *a: float) -> array[float]: ...
374 @overload
375 def poly_eval(x: float, *a: float) -> float: ...
376 @overload
377 def poly_evar(x: Iterable[float], *a: float) -> array[float]: ...
378 @overload
379 def poly_evar(x: float, *a: float) -> float: ...
381 class polytraj3:
382     def __init__(
383         self,
384         t0: float,
385         t1: float,
386         q0: float,
387         q1: float,
388         v0: float = 0,
389         v1: float = 0,
390     ) -> None: ...
391     def gen(
392         self,
393         t0: float,
394         t1: float,
395         q0: float,
396         q1: float,
397         v0: float = 0,
398         v1: float = 0,
399     ) -> polytraj3: ...
400     @overload
401     def pos(self, dt: Iterable[float]) -> array[float]: ...
402     @overload
403     def pos(self, dt: float) -> float: ...
404     @overload
405     def vel(self, dt: Iterable[float]) -> array[float]: ...
406     @overload
407     def vel(self, dt: float) -> float: ...
408     @overload
409     def acc(self, dt: Iterable[float]) -> array[float]: ...
410     @overload
411     def acc(self, dt: float) -> float: ...
412     @property
413     def q(self) -> array[float]: ...
414     @property
415     def v(self) -> array[float]: ...
416     @property
417     def a(self) -> array[float]: ...
419 class polytraj5:
420     def __init__(
421         self,
422         t0: float,
423         t1: float,
424         q0: float,
425         q1: float,
426         v0: float = 0,
427         v1: float = 0,
428         a0: float = 0,
429         a1: float = 0,
430     ) -> None: ...
431     def gen(
432         self,
433         t0: float,
434         t1: float,
435         q0: float,
436         q1: float,
437         v0: float = 0,
438         v1: float = 0,
439         a0: float = 0,
440         a1: float = 0,
441     ) -> polytraj5: ...
442     @overload
443     def pos(self, dt: Iterable[float]) -> array[float]: ...
444     @overload
445     def pos(self, dt: float) -> float: ...
446     @overload
447     def vel(self, dt: Iterable[float]) -> array[float]: ...
448     @overload
449     def vel(self, dt: float) -> float: ...
450     @overload
451     def acc(self, dt: Iterable[float]) -> array[float]: ...
452     @overload
453     def acc(self, dt: float) -> float: ...
454     @property
455     def q(self) -> array[float]: ...
456     @property
457     def v(self) -> array[float]: ...
458     @property
459     def a(self) -> array[float]: ...
461 class polytraj7:
462     def __init__(
463         self,
464         t0: float,
465         t1: float,
466         q0: float,
467         q1: float,
468         v0: float = 0,
469         v1: float = 0,
470         a0: float = 0,
471         a1: float = 0,
472         j0: float = 0,
473         j1: float = 0,
474     ) -> None: ...
475     def gen(
476         self,
477         t0: float,
478         t1: float,
479         q0: float,
480         q1: float,
481         v0: float = 0,
482         v1: float = 0,
483         a0: float = 0,
484         a1: float = 0,
485         j0: float = 0,
486         j1: float = 0,
487     ) -> polytraj7: ...
488     @overload
489     def pos(self, dt: Iterable[float]) -> array[float]: ...
490     @overload
491     def pos(self, dt: float) -> float: ...
492     @overload
493     def vel(self, dt: Iterable[float]) -> array[float]: ...
494     @overload
495     def vel(self, dt: float) -> float: ...
496     @overload
497     def acc(self, dt: Iterable[float]) -> array[float]: ...
498     @overload
499     def acc(self, dt: float) -> float: ...
500     @overload
501     def jer(self, dt: Iterable[float]) -> array[float]: ...
502     @overload
503     def jer(self, dt: float) -> float: ...
504     @property
505     def q(self) -> array[float]: ...
506     @property
507     def v(self) -> array[float]: ...
508     @property
509     def a(self) -> array[float]: ...
510     @property
511     def j(self) -> array[float]: ...
513 class tf:
514     def __init__(self, num: Iterable[float], den: Iterable[float]) -> None: ...
515     @property
516     def input(self) -> array[float]: ...
517     @property
518     def num(self) -> array[float]: ...
519     @num.setter
520     def num(self, num: Iterable[float]) -> None: ...
521     @property
522     def output(self) -> array[float]: ...
523     @property
524     def den(self) -> array[float]: ...
525     @den.setter
526     def den(self, den: Iterable[float]) -> None: ...
527     def __call__(self, x: float) -> float: ...
528     def zero(self) -> tf: ...
530 class version:
531     @staticmethod
532     def check(major: int = 0, minor: int = 0, patch: int = 0) -> int: ...
533     def __init__(self, major: int = 0, minor: int = 0, patch: int = 0) -> None: ...
534     def __lt__(self, other: version) -> bool: ...
535     def __gt__(self, other: version) -> bool: ...
536     def __le__(self, other: version) -> bool: ...
537     def __ge__(self, other: version) -> bool: ...
538     def __eq__(self, other: version) -> bool: ...
539     def __ne__(self, other: version) -> bool: ...
540     def parse(self, ver: bytes) -> version: ...
541     @property
542     def major(self) -> int: ...
543     @major.setter
544     def major(self, major: int) -> None: ...
545     @property
546     def minor(self) -> int: ...
547     @minor.setter
548     def minor(self, minor: int) -> None: ...
549     @property
550     def patch(self) -> int: ...
551     @patch.setter
552     def patch(self, patch: int) -> None: ...
553     MAJOR: int
554     MINOR: int
555     PATCH: int
556     TWEAK: int
558 VERSION: str