|
11 | 11 | from srunner.autoagents.autoware_nodes import autoware_node |
12 | 12 | from srunner.autoagents.autoware_nodes import route_node |
13 | 13 | from srunner.autoagents.autoware_nodes import state_node |
14 | | -from srunner.autoagents.autoware_nodes import tick_node |
15 | 14 |
|
16 | 15 | from srunner.autoagents.agent_state import autoware_state |
17 | 16 | from srunner.scenarioconfigs.environment_configuration import EnvironmentConfig |
@@ -70,22 +69,10 @@ def setup(self, config: EnvironmentConfig) -> None: |
70 | 69 | self._executor_thread.start() |
71 | 70 |
|
72 | 71 | self.sent_route = False |
| 72 | + self.initialised = False |
73 | 73 |
|
74 | 74 | self.carla_interface.load_world() |
75 | 75 | self.carla_interface.run_bridge() |
76 | | - # self.setup_tick_service() |
77 | | - |
78 | | - def setup_tick_service(self): |
79 | | - # no need to setup tick service anymore |
80 | | - self.tick_node = tick_node.TickNode() |
81 | | - self._tick_executor = rclpy.executors.SingleThreadedExecutor() |
82 | | - |
83 | | - self._tick_executor.add_node(self.tick_node) |
84 | | - |
85 | | - self._executor_thread = threading.Thread( |
86 | | - target=self._tick_executor.spin, daemon=True |
87 | | - ) |
88 | | - self._executor_thread.start() |
89 | 76 |
|
90 | 77 | def set_route(self) -> None: |
91 | 78 | self.agent_set_route = True |
@@ -141,7 +128,6 @@ def run_step_init(self) -> bool: |
141 | 128 | Operates on a fixed tick budget to ensure determinism. If the agent goes over the budget, it is treated as a failure. |
142 | 129 |
|
143 | 130 | """ |
144 | | - self.carla_interface.tick_bridge() |
145 | 131 |
|
146 | 132 | if not self.agent_set_route: |
147 | 133 | self.set_route() |
@@ -179,6 +165,12 @@ def run_step(self) -> None: |
179 | 165 | ) |
180 | 166 | self.last_tick = time.perf_counter_ns() |
181 | 167 |
|
| 168 | + if not self.initialised: |
| 169 | + self.initialised = self.run_step_init() |
| 170 | + |
| 171 | + if self.initialised: |
| 172 | + logger.info("Set agent route!") |
| 173 | + |
182 | 174 | # check if the current route is set |
183 | 175 | if self.autoware_state.route_set() and not self.autoware_state.sent_engage: |
184 | 176 | self.autoware_node.publish_engage(True) |
|
0 commit comments