disable autotestdict in cython
[liba.git] / python / src / a / pid.pxi
blob192f7a3d4d6872be12e9aefa8b4ecdf05956243c
1 from a.pid cimport *
3 cdef class pid:
4     cdef a_pid ctx
5     def __init__(self):
6         self.ctx.kp = 1
7         self.ctx.summax = +A_FLOAT_INF
8         self.ctx.summin = -A_FLOAT_INF
9         self.ctx.outmax = +A_FLOAT_INF
10         self.ctx.outmin = -A_FLOAT_INF
11         a_pid_init(&self.ctx)
12     def kpid(self, a_float kp, a_float ki, a_float kd):
13         a_pid_kpid(&self.ctx, kp, ki, kd)
14         return self
15     def run(self, a_float set, a_float fdb):
16         return a_pid_run(&self.ctx, set, fdb)
17     def pos(self, a_float set, a_float fdb):
18         return a_pid_pos(&self.ctx, set, fdb)
19     def inc(self, a_float set, a_float fdb):
20         return a_pid_inc(&self.ctx, set, fdb)
21     def zero(self):
22         a_pid_zero(&self.ctx)
23         return self
24     property kp:
25         def __get__(self):
26             return self.ctx.kp
27         def __set__(self, a_float kp):
28             self.ctx.kp = kp
29     property ki:
30         def __get__(self):
31             return self.ctx.ki
32         def __set__(self, a_float ki):
33             self.ctx.ki = ki
34     property kd:
35         def __get__(self):
36             return self.ctx.kd
37         def __set__(self, a_float kd):
38             self.ctx.kd = kd
39     property summax:
40         def __get__(self):
41             return self.ctx.summax
42         def __set__(self, a_float summax):
43             self.ctx.summax = summax
44     property summin:
45         def __get__(self):
46             return self.ctx.summin
47         def __set__(self, a_float summin):
48             self.ctx.summin = summin
49     property sum:
50         def __get__(self):
51             return self.ctx.sum
52     property outmax:
53         def __get__(self):
54             return self.ctx.outmax
55         def __set__(self, a_float outmax):
56             self.ctx.outmax = outmax
57     property outmin:
58         def __get__(self):
59             return self.ctx.outmin
60         def __set__(self, a_float outmin):
61             self.ctx.outmin = outmin
62     property out:
63         def __get__(self):
64             return self.ctx.out
65     property fdb:
66         def __get__(self):
67             return self.ctx.fdb
68     property err:
69         def __get__(self):
70             return self.ctx.err