-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathcarControl.py
77 lines (55 loc) · 1.74 KB
/
carControl.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
'''
Created on Apr 5, 2012
@author: lanquarden
'''
import msgParser
class CarControl(object):
'''
An object holding all the control parameters of the car
'''
# TODO range check on set parameters
def __init__(self, accel = 0.0, brake = 0.0, gear = 1, steer = 0.0, clutch = 0.0, focus = 0, meta = 0):
'''Constructor'''
self.parser = msgParser.MsgParser()
self.actions = None
self.accel = accel
self.brake = brake
self.gear = gear
self.steer = steer
self.clutch = clutch
self.focus = focus
self.meta = meta
def toMsg(self):
self.actions = {}
self.actions['accel'] = [self.accel]
self.actions['brake'] = [self.brake]
self.actions['gear'] = [self.gear]
self.actions['steer'] = [self.steer]
self.actions['clutch'] = [self.clutch]
self.actions['focus'] = [self.focus]
self.actions['meta'] = [self.meta]
return self.parser.stringify(self.actions)
def setAccel(self, accel):
self.accel = accel
def getAccel(self):
return self.accel
def setBrake(self, brake):
self.brake = brake
def getBrake(self):
return self.brake
def setGear(self, gear):
self.gear = gear
def getGear(self):
return self.gear
def setSteer(self, steer):
self.steer = steer
def getSteer(self):
return self.steer
def setClutch(self, clutch):
self.clutch = clutch
def getClutch(self):
return self.clutch
def setMeta(self, meta):
self.meta = meta
def getMeta(self):
return self.meta