From f44877397cad3ee76e9c81b7b2fbf073cdd368f3 Mon Sep 17 00:00:00 2001 From: Piv <18462828+Piv200@users.noreply.github.com> Date: Tue, 21 Apr 2020 19:53:42 +0930 Subject: [PATCH] Fix up some python to get run working in vs code. Also allowed running with python -m car --- .vscode/launch.json | 21 +++++++++++++++++++++ car/src/car/__main__.py | 4 ++++ car/src/car/controller.py | 6 ++++-- car/src/car/tracking/devices/factory.py | 2 +- 4 files changed, 30 insertions(+), 3 deletions(-) create mode 100644 .vscode/launch.json create mode 100644 car/src/car/__main__.py diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..bc78a2e --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,21 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "name": "Python: Module", + "type": "python", + "request": "launch", + "module": "car" + }, + { + "name": "Python: Current File", + "type": "python", + "request": "launch", + "program": "${file}", + "console": "integratedTerminal" + } + ] +} \ No newline at end of file diff --git a/car/src/car/__main__.py b/car/src/car/__main__.py new file mode 100644 index 0000000..8d2211b --- /dev/null +++ b/car/src/car/__main__.py @@ -0,0 +1,4 @@ +from . import controller + +if __name__ == '__main__': + controller.main() diff --git a/car/src/car/controller.py b/car/src/car/controller.py index 36aecc2..0d20f0f 100755 --- a/car/src/car/controller.py +++ b/car/src/car/controller.py @@ -55,10 +55,12 @@ class CarServer(): return grpc.ssl_server_credentials([[pvtKeyBytes, pvtCertBytes]]) - -if __name__ == '__main__': +def main(): server = CarServer(vehicle_factory.get_vehicle()) # Can't remember why I do this, is it even needed? service_thread = Thread(target=server.start_server) service_thread.start() + +if __name__ == '__main__': + main() diff --git a/car/src/car/tracking/devices/factory.py b/car/src/car/tracking/devices/factory.py index 65df823..2430ab3 100644 --- a/car/src/car/tracking/devices/factory.py +++ b/car/src/car/tracking/devices/factory.py @@ -14,7 +14,7 @@ def get_lidar(device=None, connection='/dev/ttyUSB0'): print( 'No lidar device specified and the CAR_LIDAR environment variable is not set.') if actual_device == MOCK_DEVICE: - return MockLidar(loader.load_scans_bytes_file("car/tracking/out.pickle")) + return MockLidar(loader.load_scans_bytes_file("car/src/car/tracking/out.pickle")) elif actual_device == RPLIDAR: try: from rplidar import RPLidar