From 58a1fee1063d89771b10fec8872531bd46fd16d5 Mon Sep 17 00:00:00 2001 From: Maximilian Schmeller Date: Sun, 19 Jun 2022 16:56:22 +0200 Subject: [PATCH 1/3] Initial commit --- README.md | 92 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..8ec0a28 --- /dev/null +++ b/README.md @@ -0,0 +1,92 @@ +# MA Autoware Dependency Digger + +Automatically extract data dependencies from Autoware source code + +## Getting started + +To make it easy for you to get started with GitLab, here's a list of recommended next steps. + +Already a pro? Just edit this README.md and make it your own. Want to make it easy? [Use the template at the bottom](#editing-this-readme)! + +## Add your files + +- [ ] [Create](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#create-a-file) or [upload](https://docs.gitlab.com/ee/user/project/repository/web_editor.html#upload-a-file) files +- [ ] [Add files using the command line](https://docs.gitlab.com/ee/gitlab-basics/add-file.html#add-a-file-using-the-command-line) or push an existing Git repository with the following command: + +``` +cd existing_repo +git remote add origin https://gitlab.lrz.de/schmeller/ma-autoware-dependency-digger.git +git branch -M main +git push -uf origin main +``` + +## Integrate with your tools + +- [ ] [Set up project integrations](https://gitlab.lrz.de/schmeller/ma-autoware-dependency-digger/-/settings/integrations) + +## Collaborate with your team + +- [ ] [Invite team members and collaborators](https://docs.gitlab.com/ee/user/project/members/) +- [ ] [Create a new merge request](https://docs.gitlab.com/ee/user/project/merge_requests/creating_merge_requests.html) +- [ ] [Automatically close issues from merge requests](https://docs.gitlab.com/ee/user/project/issues/managing_issues.html#closing-issues-automatically) +- [ ] [Enable merge request approvals](https://docs.gitlab.com/ee/user/project/merge_requests/approvals/) +- [ ] [Automatically merge when pipeline succeeds](https://docs.gitlab.com/ee/user/project/merge_requests/merge_when_pipeline_succeeds.html) + +## Test and Deploy + +Use the built-in continuous integration in GitLab. + +- [ ] [Get started with GitLab CI/CD](https://docs.gitlab.com/ee/ci/quick_start/index.html) +- [ ] [Analyze your code for known vulnerabilities with Static Application Security Testing(SAST)](https://docs.gitlab.com/ee/user/application_security/sast/) +- [ ] [Deploy to Kubernetes, Amazon EC2, or Amazon ECS using Auto Deploy](https://docs.gitlab.com/ee/topics/autodevops/requirements.html) +- [ ] [Use pull-based deployments for improved Kubernetes management](https://docs.gitlab.com/ee/user/clusters/agent/) +- [ ] [Set up protected environments](https://docs.gitlab.com/ee/ci/environments/protected_environments.html) + +*** + +# Editing this README + +When you're ready to make this README your own, just edit this file and use the handy template below (or feel free to structure it however you want - this is just a starting point!). Thank you to [makeareadme.com](https://www.makeareadme.com/) for this template. + +## Suggestions for a good README +Every project is different, so consider which of these sections apply to yours. The sections used in the template are suggestions for most open source projects. Also keep in mind that while a README can be too long and detailed, too long is better than too short. If you think your README is too long, consider utilizing another form of documentation rather than cutting out information. + +## Name +Choose a self-explaining name for your project. + +## Description +Let people know what your project can do specifically. Provide context and add a link to any reference visitors might be unfamiliar with. A list of Features or a Background subsection can also be added here. If there are alternatives to your project, this is a good place to list differentiating factors. + +## Badges +On some READMEs, you may see small images that convey metadata, such as whether or not all the tests are passing for the project. You can use Shields to add some to your README. Many services also have instructions for adding a badge. + +## Visuals +Depending on what you are making, it can be a good idea to include screenshots or even a video (you'll frequently see GIFs rather than actual videos). Tools like ttygif can help, but check out Asciinema for a more sophisticated method. + +## Installation +Within a particular ecosystem, there may be a common way of installing things, such as using Yarn, NuGet, or Homebrew. However, consider the possibility that whoever is reading your README is a novice and would like more guidance. Listing specific steps helps remove ambiguity and gets people to using your project as quickly as possible. If it only runs in a specific context like a particular programming language version or operating system or has dependencies that have to be installed manually, also add a Requirements subsection. + +## Usage +Use examples liberally, and show the expected output if you can. It's helpful to have inline the smallest example of usage that you can demonstrate, while providing links to more sophisticated examples if they are too long to reasonably include in the README. + +## Support +Tell people where they can go to for help. It can be any combination of an issue tracker, a chat room, an email address, etc. + +## Roadmap +If you have ideas for releases in the future, it is a good idea to list them in the README. + +## Contributing +State if you are open to contributions and what your requirements are for accepting them. + +For people who want to make changes to your project, it's helpful to have some documentation on how to get started. Perhaps there is a script that they should run or some environment variables that they need to set. Make these steps explicit. These instructions could also be useful to your future self. + +You can also document commands to lint the code or run tests. These steps help to ensure high code quality and reduce the likelihood that the changes inadvertently break something. Having instructions for running tests is especially helpful if it requires external setup, such as starting a Selenium server for testing in a browser. + +## Authors and acknowledgment +Show your appreciation to those who have contributed to the project. + +## License +For open source projects, say how it is licensed. + +## Project status +If you have run out of energy or time for your project, put a note at the top of the README saying that development has slowed down or stopped completely. Someone may choose to fork your project or volunteer to step in as a maintainer or owner, allowing your project to keep going. You can also make an explicit request for maintainers. From d92116378906a816592f594254c51c7c2784e31e Mon Sep 17 00:00:00 2001 From: Maximilian Schmeller Date: Tue, 28 Jun 2022 10:09:17 +0200 Subject: [PATCH 2/3] Start refactoring for cursor-based operation --- annotate_interactively.py | 112 ++++++ ast_utils.py | 281 +++++++++++++ clang-digger.ipynb | 479 ++++++++++++++++++++++ digger.ipynb | 824 ++++++++++++++++++++++++++++++++++++++ 4 files changed, 1696 insertions(+) create mode 100644 annotate_interactively.py create mode 100644 ast_utils.py create mode 100644 clang-digger.ipynb create mode 100644 digger.ipynb diff --git a/annotate_interactively.py b/annotate_interactively.py new file mode 100644 index 0000000..0e622cc --- /dev/null +++ b/annotate_interactively.py @@ -0,0 +1,112 @@ +import json +import os.path +import sys +import termcolor +from typing import Dict, List, Tuple + + +ignored_idfs = set() + + +def highlight(substr: str, text: str): + return text.replace(substr, termcolor.colored(substr, 'green', attrs=['bold'])) + + +def prompt_user(file: str, cb: str, idf: str, text: str) -> Tuple[str, bool, bool]: + print(f"{file.rstrip('.cpp')}->{cb}:") + print(highlight(idf, text)) + answer = input(f"{highlight(idf, idf)}\nwrite (w), read (r), both (rw), ignore future (i) exit and save (q), undo (z), skip (Enter): ") + if answer not in ["", "r", "w", "rw", "q", "z", "i"]: + print(f"Invalid answer '{answer}', try again.") + answer = prompt_user(file, cb, idf, text) + + if answer == 'i': + ignored_idfs.add(idf) + elif any(x in answer for x in ['r', 'w']): + ignored_idfs.discard(idf) + + return answer, answer == "q", answer == "z" + + +def main(cb_dict: Dict): + cb_rw_dict = {} + + jobs = [] + + for file, cbs in cb_dict.items(): + cb_rw_dict[file] = {} + for cb, cb_data in cbs.items(): + cb: str + if 'error' in cb_data: + print(f"Error: {cb_data['error']}") + continue + identifiers = cb_data['identifiers'] + text_lines = cb_data['body_lines'] + text = "".join(text_lines) + + cb_rw_dict[file][cb] = {'reads': [], 'writes': []} + + for idf in identifiers: + jobs.append((file, cb, idf, text)) + + # Skip already saved mappings + if os.path.exists("cb_mapping.json"): + with open("cb_mapping.json", "r") as f: + prev_rw_dict = json.load(f) + jobs = [(file, cb, idf, text) + for file, cb, idf, text in jobs + if file not in prev_rw_dict + or cb not in prev_rw_dict[file]] + + i = 0 + do_undo = False + while i < len(jobs): + file, cb, idf, text = jobs[i] + + if do_undo: + ignored_idfs.discard(idf) + cb_rw_dict[file][cb]['reads'].remove(idf) + cb_rw_dict[file][cb]['writes'].remove(idf) + do_undo = False + + if idf in ignored_idfs: + i += 1 + continue + + classification, answ_quit, answ_undo = prompt_user(file, cb, idf, text) + + if answ_quit: + del cb_rw_dict[file][cb] + break + elif answ_undo: + i -= 1 + do_undo = True + continue + + if 'r' in classification: + cb_rw_dict[file][cb]['reads'].append(idf) + if 'w' in classification: + cb_rw_dict[file][cb]['writes'].append(idf) + if not any(x in classification for x in ['r', 'w']): + print(f"Ignoring occurences of {idf} in cb.") + + i += 1 + + with open("cb_mapping.json", "w") as f: + json.dump(cb_rw_dict, f) + + print("Done.") + + +if __name__ == "__main__": + if len(sys.argv) != 2: + print(f"Usage: {sys.argv[0]} ") + exit(0) + + with open(sys.argv[1], "r") as f: + cb_dict = json.load(f) + common_prefix = os.path.commonprefix(list(cb_dict.keys())) + strip_len = len(common_prefix) + cb_dict = {k[strip_len:]: v for k, v in cb_dict.items()} + + main(cb_dict) diff --git a/ast_utils.py b/ast_utils.py new file mode 100644 index 0000000..91eadba --- /dev/null +++ b/ast_utils.py @@ -0,0 +1,281 @@ +import clang.cindex as ci +from clang.cindex import TokenKind as tk +from clang.cindex import CursorKind as ck +from typing import List + + +class TUHandler: + BRACK_MAP = { + ')': '(', + ']': '[', + '>': '<', + '}': '{' + } + + def __init__(self, tu: ci.TranslationUnit): + self.tu = tu + + def get_subscription_callback_handlers(self): + ################################################# + # Find create_subscription function calls + ################################################# + + c: ci.Cursor = self.tu.cursor + create_subscription_tokens = [ + " ".join(map(lambda t2: t2.spelling, t.cursor.get_tokens())) + for t in c.get_tokens() + if t.kind == tk.IDENTIFIER and t.spelling == "create_subscription" + ] + + print(create_subscription_tokens) + + ################################################# + # Extract callback function identifier + ################################################# + + + ################################################# + # Locate definition for callback function + ################################################# + pass + + def get_timer_callback_handlers(self): + pass + + def get_member_accesses(self, function_def: ci.Cursor): + pass + + # def consume_generics(ts: List[ci.Token]): + # if not ts or ts[0].spelling != '<': + # return ts, None + + # gen = [] + # for i, t in enumerate(ts): + # match t.spelling: + # case '<': + # pass + # case '>': + # return ts[i+1:], gen + # case _: + # gen.append(t) + + # return ts, None + + # def consume_args(ts: List[ci.Token]): + # if not ts or ts[0].spelling != '(': + # print(f"Opening token is {ts[0].spelling}, not (") + # return ts, None + + # ts = ts[1:] # strip start tok + + # args = [] + # current_arg = [] + # brack_depth = 1 + # for i, t in enumerate(ts): + # match t.spelling: + # case '(': + # brack_depth += 1 + # current_arg.append(t) + # case ')': + # brack_depth -= 1 + # if brack_depth == 0: + # args.append(current_arg) + # return ts[i+1:], args + # else: + # current_arg.append(t) + # case ',': + # if brack_depth > 1: + # current_arg.append(t) + # else: + # args.append(current_arg) + # current_arg = [] + # case _: + # current_arg.append(t) + + # return ts, None + + # def consume_function_identifier(ts: List[ci.Token]): + # identifier = [] + # for i, t in enumerate(ts): + # match t.kind: + # case tk.PUNCTUATION: + # match t.spelling: + # case "(" | "<": + # return ts[i:], identifier + # case _: + # identifier.append(t) + # case _: + # identifier.append(t) + + # return ts, None + + # def consume_function_call(ts: List[ci.Token]): + # assert ts and ts[0].kind == tk.IDENTIFIER + # ts, identifier = consume_function_identifier(ts) + # ts, gen = consume_generics(ts) + # ts, args = consume_args(ts) + + # return ts, identifier, gen, args + + # def find_children(cur: ci.Cursor, find_func): + # found = [] + # if find_func(cur): + # found.append(cur) + + # for c in cur.get_children(): + # found += find_children(c, find_func) + + # return found + + # def find_body(cur: ci.Cursor, symbol: List[ci.Token]): + # if symbol is None: + # return + + # method_candidates = find_children(cur, lambda c: c.kind == ck.CXX_METHOD and any( + # map(lambda t: t.spelling == symbol[-1].spelling, c.get_tokens()))) + # valid_candidates = [] + # for cand in method_candidates: + # func_bodies = find_children( + # cand, lambda c: c.kind == ck.COMPOUND_STMT) + # if not func_bodies: + # continue + # valid_candidates.append(func_bodies[0]) + + # if len(valid_candidates) != 1: + # print( + # f"Error, {pt(symbol)} has {len(valid_candidates)} candidates for a function definition!") + # return None + + # def _rec(c: ci.Cursor, lvl=0): + # print( + # f"{' '*lvl*2}{str(c.kind):.<40s} {c.spelling:30s} {';;'.join(str(arg.kind) for arg in c.get_arguments())}") + # for ch in c.get_children(): + # _rec(ch, lvl+1) + + # _rec(valid_candidates[0]) + + # return list(valid_candidates[0].get_tokens()) + + # def get_identifiers_with_lines(tokens: List[ci.Token]): + + # stmt_extent = (tokens[0].extent.start, tokens[-1].extent.end) + # stmt_file = stmt_extent[0].file.name + # file_slice = slice(stmt_extent[0].line, stmt_extent[-1].line) + # with open(stmt_file, "r") as f: + # stmt_text = f.readlines()[file_slice] + + # ids = [] + # cur_id = [] + # for t in tokens: + # match t.kind: + # case tk.IDENTIFIER: + # cur_id.append(t) + # case tk.PUNCTUATION: + # match t.spelling: + # case "::" | "->" | ".": + # if cur_id: + # cur_id.append(t) + # case _: + # if cur_id: + # ids.append(cur_id) + # cur_id = [] + # case _: + # if cur_id: + # ids.append(cur_id) + # cur_id = [] + + # return ids, stmt_text + + # def consume_lambda_entry(ts: List[ci.Token]): + # if not ts or ts[0].spelling != "[": + # return ts, None + + # brack_level = 0 + # for i, t in enumerate(ts): + # match t.spelling: + # case '[': + # brack_level += 1 + # case ']': + # brack_level -= 1 + # if brack_level == 0: + # return ts[i+1:], list(ts[1:i-1]) + + # return ts, None + + # def consume_braced_block(ts: List[ci.Token]): + # if not ts or ts[0].spelling != "{": + # return ts, None + + # brack_stack = [] + + # for i, t in enumerate(ts): + # match t.kind: + # case tk.PUNCTUATION: + # match t.spelling: + # case '(' | '[' | '{': + # brack_stack.append(t) + # case ')' | ']' | '}': + # if brack_stack[-1].spelling == BRACK_MAP[t.spelling]: + # brack_stack.pop() + # if len(brack_stack) == 0: + # return ts[i+1:], list(ts[:i]) + # else: + # raise ValueError( + # f"Invalid brackets: {pt(brack_stack)}, {t.spelling}") + # return ts, None + + # def consume_lambda_def(ts: List[ci.Token]): + # ts, entry = consume_lambda_entry(ts) + # ts, args = consume_args(ts) + # ts, body = consume_braced_block(ts) + # return ts, body + + # def consume_callback_symbol(ts: List[ci.Token]): + # lambda_body = None + # if ts and ts[0].spelling == "std": + # ts, identifier, gen, args = consume_function_call(ts) + # if not args: + # raise ValueError("Empty arg list") + # if args[0][0].spelling != "&": + # raise NotImplementedError(pt(args)) + # callback_sym = args[0][1:] + # elif ts and ts[0].spelling == "[": + # ts, lambda_body = consume_lambda_def(ts) + # callback_sym = None + # else: + # print( + # f"Error: {pt(ts[:30])} is a callback symbol of unknown structure") + # callback_sym = None + + # return callback_sym, lambda_body + + # def get_mappings(tu: ci.TranslationUnit): + # cb_sym_to_identifiers_map = {} + + # ts_all = list(tu.cursor.get_tokens()) + # for i, t in enumerate(ts_all): + # if t.kind == ci.TokenKind.IDENTIFIER and t.spelling == "create_subscription": + # ts2, identifier, gen, args = consume_function_call(ts_all[i:]) + # cb = args[2] + # cb_sym, body = consume_callback_symbol(cb) + # cb_sym_key = pt(cb_sym) if cb_sym is not None else pt(cb) + # print(cb_sym_key) + # if body is None: + # body = find_body(tu.cursor, cb_sym) + # if body is not None: + # #print(" ",pt(body)) + # identifiers, text_lines = get_identifiers_with_lines(body) + # for l in text_lines: + # print(l.rstrip()) + + # if cb_sym_key not in cb_sym_to_identifiers_map: + # cb_sym_to_identifiers_map[cb_sym_key] = {'identifiers': list( + # map(pt, identifiers)), 'body_lines': text_lines} + # else: + # raise ValueError( + # f"Multiple create_subscription with same handler: {cb_sym_key}") + # else: + # cb_sym_to_identifiers_map[cb_sym_key] = { + # 'error': "No function body found"} + # #raise ValueError(f"No function body found for {cb_sym_key}") + # return cb_sym_to_identifiers_map diff --git a/clang-digger.ipynb b/clang-digger.ipynb new file mode 100644 index 0000000..668cd2e --- /dev/null +++ b/clang-digger.ipynb @@ -0,0 +1,479 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Defaulting to user installation because normal site-packages is not writeable\n", + "Requirement already satisfied: libclang in /home/max/.local/lib/python3.10/site-packages (14.0.1)\n", + "Note: you may need to restart the kernel to use updated packages.\n" + ] + } + ], + "source": [ + "%pip install libclang" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": { + "collapsed": false, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "import glob\n", + "import json\n", + "import os\n", + "import pathlib\n", + "import re\n", + "from typing import Union, Iterator, List\n", + "\n", + "import clang.cindex as ci\n", + "from clang.cindex import TokenKind as tk\n", + "from clang.cindex import CursorKind as ck\n", + "\n", + "import ast_utils\n", + "\n", + "jj = os.path.join\n", + "\n", + "FS_ROOT = \"/\"\n", + "ROOT_DIR = jj(FS_ROOT, \"/home/max/projects/autoware/\")\n", + "\n", + "def pext(t: Union[ci.Token, ci.Cursor]):\n", + " e = t.extent\n", + " return f\"{e.start.line}:{e.start.column}-{e.end.line}:{e.end.column}\"\n", + "\n", + "def pt(tokens, join_str=''):\n", + " if tokens is None:\n", + " return \"None\"\n", + " return join_str.join(map(lambda t: t.spelling, tokens))\n", + "\n", + "if not os.path.exists(jj(ROOT_DIR, \"build/compile_commands.json\")):\n", + " print(\"Run\")\n", + " print(\" colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release -DCMAKE_EXPORT_COMPILE_COMMANDS=ON\")\n", + " print(\"to generate the files necessary to run this script.\")" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "collapsed": false, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [ + "_arg_pattern = re.compile(r\"(?<=\\s)(?:-D\\s*\\S+|-I\\s*\\S+|-isystem\\s*\\S+|--?std\\s*\\S+)(?=\\s)\")\n", + "\n", + "def _extract_args(compile_command):\n", + " segments = _arg_pattern.findall(compile_command)\n", + " segments = [part.strip() for seg in segments for part in seg.split(\" \")]\n", + " return segments\n", + "\n", + "with open(jj(ROOT_DIR, \"build/compile_commands.json\"), \"r\") as f:\n", + " compile_commands = json.load(f)\n", + "\n", + "compile_commands = {cmd['file']: cmd['command'] for cmd in compile_commands}\n", + "compile_commands = {k: _extract_args(v) for k, v in compile_commands.items()}" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": { + "collapsed": false, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "['{ transform_listener_ = std :: make_shared < tier4_autoware_utils :: TransformListener > ( this ) ; // get parameter update_hz_ = this -> declare_parameter < double > ( \"update_hz\" , 10.0 ) ; covariance_ = this -> declare_parameter < double > ( \"initial_covariance\" , 0.05 ) ; velocity_min_threshold_ = this -> declare_parameter < double > ( \"velocity_min_threshold\" , 0.1 ) ; velocity_diff_threshold_ = this -> declare_parameter < double > ( \"velocity_diff_threshold\" , 0.556 ) ; pedal_diff_threshold_ = this -> declare_parameter < double > ( \"pedal_diff_threshold\" , 0.03 ) ; max_steer_threshold_ = this -> declare_parameter < double > ( \"max_steer_threshold\" , 0.2 ) ; max_pitch_threshold_ = this -> declare_parameter < double > ( \"max_pitch_threshold\" , 0.02 ) ; max_jerk_threshold_ = this -> declare_parameter < double > ( \"max_jerk_threshold\" , 0.7 ) ; pedal_velocity_thresh_ = this -> declare_parameter < double > ( \"pedal_velocity_thresh\" , 0.15 ) ; map_update_gain_ = this -> declare_parameter < double > ( \"map_update_gain\" , 0.02 ) ; max_accel_ = this -> declare_parameter < double > ( \"max_accel\" , 5.0 ) ; min_accel_ = this -> declare_parameter < double > ( \"min_accel\" , - 5.0 ) ; pedal_to_accel_delay_ = this -> declare_parameter < double > ( \"pedal_to_accel_delay\" , 0.3 ) ; max_data_count_ = this -> declare_parameter < int > ( \"max_data_count\" , 200 ) ; pedal_accel_graph_output_ = this -> declare_parameter < bool > ( \"pedal_accel_graph_output\" , false ) ; progress_file_output_ = this -> declare_parameter < bool > ( \"progress_file_output\" , false ) ; const auto get_pitch_method_str = this -> declare_parameter < std :: string > ( \"get_pitch_method\" , std :: string ( \"tf\" ) ) ; if ( get_pitch_method_str == std :: string ( \"tf\" ) ) { get_pitch_method_ = GET_PITCH_METHOD :: TF ; } else if ( get_pitch_method_str == std :: string ( \"none\" ) ) { get_pitch_method_ = GET_PITCH_METHOD :: NONE ; } else { RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"update_method_\" << \" is wrong. (available method: tf, file, none\" ) ; return ; } update_suggest_thresh_ = this -> declare_parameter < double > ( \"update_suggest_thresh\" , 0.7 ) ; csv_calibrated_map_dir_ = this -> declare_parameter < std :: string > ( \"csv_calibrated_map_dir\" , std :: string ( \"\" ) ) ; output_accel_file_ = csv_calibrated_map_dir_ + \"/accel_map.csv\" ; output_brake_file_ = csv_calibrated_map_dir_ + \"/brake_map.csv\" ; const std :: string update_method_str = this -> declare_parameter < std :: string > ( \"update_method\" , std :: string ( \"update_offset_each_cell\" ) ) ; if ( update_method_str == std :: string ( \"update_offset_each_cell\" ) ) { update_method_ = UPDATE_METHOD :: UPDATE_OFFSET_EACH_CELL ; } else if ( update_method_str == std :: string ( \"update_offset_total\" ) ) { update_method_ = UPDATE_METHOD :: UPDATE_OFFSET_TOTAL ; } else { RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"update_method\" << \" is wrong. (available method: update_offset_each_cell, update_offset_total\" ) ; return ; } // initializer // QoS setup static constexpr std :: size_t queue_size = 1 ; rclcpp :: QoS durable_qos ( queue_size ) ; // Publisher for checkUpdateSuggest calibration_status_pub_ = create_publisher < tier4_external_api_msgs :: msg :: CalibrationStatus > ( \"/accel_brake_map_calibrator/output/calibration_status\" , durable_qos ) ; /* Diagnostic Updater */ updater_ptr_ = std :: make_shared < diagnostic_updater :: Updater > ( this , 1.0 / update_hz_ ) ; updater_ptr_ -> setHardwareID ( \"accel_brake_map_calibrator\" ) ; updater_ptr_ -> add ( \"accel_brake_map_calibrator\" , this , & AccelBrakeMapCalibrator :: checkUpdateSuggest ) ; { csv_default_map_dir_ = this -> declare_parameter < std :: string > ( \"csv_default_map_dir\" , std :: string ( \"\" ) ) ; std :: string csv_path_accel_map = csv_default_map_dir_ + \"/accel_map.csv\" ; std :: string csv_path_brake_map = csv_default_map_dir_ + \"/brake_map.csv\" ; if ( ! accel_map_ . readAccelMapFromCSV ( csv_path_accel_map ) || ! new_accel_map_ . readAccelMapFromCSV ( csv_path_accel_map ) ) { is_default_map_ = false ; RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"Cannot read accelmap. csv path = \" << csv_path_accel_map . c_str ( ) << \". stop calculation.\" ) ; return ; } if ( ! brake_map_ . readBrakeMapFromCSV ( csv_path_brake_map ) || ! new_brake_map_ . readBrakeMapFromCSV ( csv_path_brake_map ) ) { is_default_map_ = false ; RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"Cannot read brakemap. csv path = \" << csv_path_brake_map . c_str ( ) << \". stop calculation.\" ) ; return ; } } std :: string output_log_file = this -> declare_parameter < std :: string > ( \"output_log_file\" , std :: string ( \"\" ) ) ; output_log_ . open ( output_log_file ) ; addIndexToCSV ( & output_log_ ) ; debug_values_ . data . resize ( num_debug_values_ ) ; // input map info accel_map_value_ = accel_map_ . getAccelMap ( ) ; brake_map_value_ = brake_map_ . getBrakeMap ( ) ; accel_vel_index_ = accel_map_ . getVelIdx ( ) ; brake_vel_index_ = brake_map_ . getVelIdx ( ) ; accel_pedal_index_ = accel_map_ . getThrottleIdx ( ) ; brake_pedal_index_ = brake_map_ . getBrakeIdx ( ) ; update_accel_map_value_ . resize ( ( accel_map_value_ . size ( ) ) ) ; update_brake_map_value_ . resize ( ( brake_map_value_ . size ( ) ) ) ; for ( auto & m : update_accel_map_value_ ) { m . resize ( accel_map_value_ . at ( 0 ) . size ( ) ) ; } for ( auto & m : update_brake_map_value_ ) { m . resize ( brake_map_value_ . at ( 0 ) . size ( ) ) ; } map_value_data_ . resize ( accel_map_value_ . size ( ) + brake_map_value_ . size ( ) - 1 ) ; for ( auto & m : map_value_data_ ) { m . resize ( accel_map_value_ . at ( 0 ) . size ( ) ) ; } std :: copy ( accel_map_value_ . begin ( ) , accel_map_value_ . end ( ) , update_accel_map_value_ . begin ( ) ) ; std :: copy ( brake_map_value_ . begin ( ) , brake_map_value_ . end ( ) , update_brake_map_value_ . begin ( ) ) ; // publisher update_suggest_pub_ = create_publisher < std_msgs :: msg :: Bool > ( \"~/output/update_suggest\" , durable_qos ) ; original_map_occ_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/original_occ_map\" , durable_qos ) ; update_map_occ_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/update_occ_map\" , durable_qos ) ; data_ave_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_average_occ_map\" , durable_qos ) ; data_std_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_std_dev_occ_map\" , durable_qos ) ; data_count_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_count_occ_map\" , durable_qos ) ; data_count_with_self_pose_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_count_self_pose_occ_map\" , durable_qos ) ; index_pub_ = create_publisher < visualization_msgs :: msg :: MarkerArray > ( \"/accel_brake_map_calibrator/debug/occ_index\" , durable_qos ) ; original_map_raw_pub_ = create_publisher < std_msgs :: msg :: Float32MultiArray > ( \"/accel_brake_map_calibrator/debug/original_raw_map\" , durable_qos ) ; update_map_raw_pub_ = create_publisher < std_msgs :: msg :: Float32MultiArray > ( \"/accel_brake_map_calibrator/output/update_raw_map\" , durable_qos ) ; debug_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32MultiArrayStamped > ( \"/accel_brake_map_calibrator/output/debug_values\" , durable_qos ) ; current_map_error_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32Stamped > ( \"/accel_brake_map_calibrator/output/current_map_error\" , durable_qos ) ; updated_map_error_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32Stamped > ( \"/accel_brake_map_calibrator/output/updated_map_error\" , durable_qos ) ; map_error_ratio_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32Stamped > ( \"/accel_brake_map_calibrator/output/map_error_ratio\" , durable_qos ) ; // subscriber using std :: placeholders :: _1 ; using std :: placeholders :: _2 ; using std :: placeholders :: _3 ; velocity_sub_ = create_subscription < autoware_auto_vehicle_msgs :: msg :: VelocityReport > ( \"~/input/velocity\" , queue_size , std :: bind ( & AccelBrakeMapCalibrator :: callbackVelocity , this , _1 ) ) ; steer_sub_ = create_subscription < autoware_auto_vehicle_msgs :: msg :: SteeringReport > ( \"~/input/steer\" , queue_size , std :: bind ( & AccelBrakeMapCalibrator :: callbackSteer , this , _1 ) ) ; actuation_status_sub_ = create_subscription < tier4_vehicle_msgs :: msg :: ActuationStatusStamped > ( \"~/input/actuation_status\" , queue_size , std :: bind ( & AccelBrakeMapCalibrator :: callbackActuationStatus , this , _1 ) ) ; // Service update_map_dir_server_ = create_service < tier4_vehicle_msgs :: srv :: UpdateAccelBrakeMap > ( \"~/input/update_map_dir\" , std :: bind ( & AccelBrakeMapCalibrator :: callbackUpdateMapService , this , _1 , _2 , _3 ) ) ; // timer initTimer ( 1.0 / update_hz_ ) ; initOutputCSVTimer ( 30.0 ) ; }', '{ transform_listener_ = std :: make_shared < tier4_autoware_utils :: TransformListener > ( this ) ; // get parameter update_hz_ = this -> declare_parameter < double > ( \"update_hz\" , 10.0 ) ; covariance_ = this -> declare_parameter < double > ( \"initial_covariance\" , 0.05 ) ; velocity_min_threshold_ = this -> declare_parameter < double > ( \"velocity_min_threshold\" , 0.1 ) ; velocity_diff_threshold_ = this -> declare_parameter < double > ( \"velocity_diff_threshold\" , 0.556 ) ; pedal_diff_threshold_ = this -> declare_parameter < double > ( \"pedal_diff_threshold\" , 0.03 ) ; max_steer_threshold_ = this -> declare_parameter < double > ( \"max_steer_threshold\" , 0.2 ) ; max_pitch_threshold_ = this -> declare_parameter < double > ( \"max_pitch_threshold\" , 0.02 ) ; max_jerk_threshold_ = this -> declare_parameter < double > ( \"max_jerk_threshold\" , 0.7 ) ; pedal_velocity_thresh_ = this -> declare_parameter < double > ( \"pedal_velocity_thresh\" , 0.15 ) ; map_update_gain_ = this -> declare_parameter < double > ( \"map_update_gain\" , 0.02 ) ; max_accel_ = this -> declare_parameter < double > ( \"max_accel\" , 5.0 ) ; min_accel_ = this -> declare_parameter < double > ( \"min_accel\" , - 5.0 ) ; pedal_to_accel_delay_ = this -> declare_parameter < double > ( \"pedal_to_accel_delay\" , 0.3 ) ; max_data_count_ = this -> declare_parameter < int > ( \"max_data_count\" , 200 ) ; pedal_accel_graph_output_ = this -> declare_parameter < bool > ( \"pedal_accel_graph_output\" , false ) ; progress_file_output_ = this -> declare_parameter < bool > ( \"progress_file_output\" , false ) ; const auto get_pitch_method_str = this -> declare_parameter < std :: string > ( \"get_pitch_method\" , std :: string ( \"tf\" ) ) ; if ( get_pitch_method_str == std :: string ( \"tf\" ) ) { get_pitch_method_ = GET_PITCH_METHOD :: TF ; } else if ( get_pitch_method_str == std :: string ( \"none\" ) ) { get_pitch_method_ = GET_PITCH_METHOD :: NONE ; } else { RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"update_method_\" << \" is wrong. (available method: tf, file, none\" ) ; return ; } update_suggest_thresh_ = this -> declare_parameter < double > ( \"update_suggest_thresh\" , 0.7 ) ; csv_calibrated_map_dir_ = this -> declare_parameter < std :: string > ( \"csv_calibrated_map_dir\" , std :: string ( \"\" ) ) ; output_accel_file_ = csv_calibrated_map_dir_ + \"/accel_map.csv\" ; output_brake_file_ = csv_calibrated_map_dir_ + \"/brake_map.csv\" ; const std :: string update_method_str = this -> declare_parameter < std :: string > ( \"update_method\" , std :: string ( \"update_offset_each_cell\" ) ) ; if ( update_method_str == std :: string ( \"update_offset_each_cell\" ) ) { update_method_ = UPDATE_METHOD :: UPDATE_OFFSET_EACH_CELL ; } else if ( update_method_str == std :: string ( \"update_offset_total\" ) ) { update_method_ = UPDATE_METHOD :: UPDATE_OFFSET_TOTAL ; } else { RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"update_method\" << \" is wrong. (available method: update_offset_each_cell, update_offset_total\" ) ; return ; } // initializer // QoS setup static constexpr std :: size_t queue_size = 1 ; rclcpp :: QoS durable_qos ( queue_size ) ; // Publisher for checkUpdateSuggest calibration_status_pub_ = create_publisher < tier4_external_api_msgs :: msg :: CalibrationStatus > ( \"/accel_brake_map_calibrator/output/calibration_status\" , durable_qos ) ; /* Diagnostic Updater */ updater_ptr_ = std :: make_shared < diagnostic_updater :: Updater > ( this , 1.0 / update_hz_ ) ; updater_ptr_ -> setHardwareID ( \"accel_brake_map_calibrator\" ) ; updater_ptr_ -> add ( \"accel_brake_map_calibrator\" , this , & AccelBrakeMapCalibrator :: checkUpdateSuggest ) ; { csv_default_map_dir_ = this -> declare_parameter < std :: string > ( \"csv_default_map_dir\" , std :: string ( \"\" ) ) ; std :: string csv_path_accel_map = csv_default_map_dir_ + \"/accel_map.csv\" ; std :: string csv_path_brake_map = csv_default_map_dir_ + \"/brake_map.csv\" ; if ( ! accel_map_ . readAccelMapFromCSV ( csv_path_accel_map ) || ! new_accel_map_ . readAccelMapFromCSV ( csv_path_accel_map ) ) { is_default_map_ = false ; RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"Cannot read accelmap. csv path = \" << csv_path_accel_map . c_str ( ) << \". stop calculation.\" ) ; return ; } if ( ! brake_map_ . readBrakeMapFromCSV ( csv_path_brake_map ) || ! new_brake_map_ . readBrakeMapFromCSV ( csv_path_brake_map ) ) { is_default_map_ = false ; RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"Cannot read brakemap. csv path = \" << csv_path_brake_map . c_str ( ) << \". stop calculation.\" ) ; return ; } } std :: string output_log_file = this -> declare_parameter < std :: string > ( \"output_log_file\" , std :: string ( \"\" ) ) ; output_log_ . open ( output_log_file ) ; addIndexToCSV ( & output_log_ ) ; debug_values_ . data . resize ( num_debug_values_ ) ; // input map info accel_map_value_ = accel_map_ . getAccelMap ( ) ; brake_map_value_ = brake_map_ . getBrakeMap ( ) ; accel_vel_index_ = accel_map_ . getVelIdx ( ) ; brake_vel_index_ = brake_map_ . getVelIdx ( ) ; accel_pedal_index_ = accel_map_ . getThrottleIdx ( ) ; brake_pedal_index_ = brake_map_ . getBrakeIdx ( ) ; update_accel_map_value_ . resize ( ( accel_map_value_ . size ( ) ) ) ; update_brake_map_value_ . resize ( ( brake_map_value_ . size ( ) ) ) ; for ( auto & m : update_accel_map_value_ ) { m . resize ( accel_map_value_ . at ( 0 ) . size ( ) ) ; } for ( auto & m : update_brake_map_value_ ) { m . resize ( brake_map_value_ . at ( 0 ) . size ( ) ) ; } map_value_data_ . resize ( accel_map_value_ . size ( ) + brake_map_value_ . size ( ) - 1 ) ; for ( auto & m : map_value_data_ ) { m . resize ( accel_map_value_ . at ( 0 ) . size ( ) ) ; } std :: copy ( accel_map_value_ . begin ( ) , accel_map_value_ . end ( ) , update_accel_map_value_ . begin ( ) ) ; std :: copy ( brake_map_value_ . begin ( ) , brake_map_value_ . end ( ) , update_brake_map_value_ . begin ( ) ) ; // publisher update_suggest_pub_ = create_publisher < std_msgs :: msg :: Bool > ( \"~/output/update_suggest\" , durable_qos ) ; original_map_occ_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/original_occ_map\" , durable_qos ) ; update_map_occ_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/update_occ_map\" , durable_qos ) ; data_ave_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_average_occ_map\" , durable_qos ) ; data_std_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_std_dev_occ_map\" , durable_qos ) ; data_count_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_count_occ_map\" , durable_qos ) ; data_count_with_self_pose_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_count_self_pose_occ_map\" , durable_qos ) ; index_pub_ = create_publisher < visualization_msgs :: msg :: MarkerArray > ( \"/accel_brake_map_calibrator/debug/occ_index\" , durable_qos ) ; original_map_raw_pub_ = create_publisher < std_msgs :: msg :: Float32MultiArray > ( \"/accel_brake_map_calibrator/debug/original_raw_map\" , durable_qos ) ; update_map_raw_pub_ = create_publisher < std_msgs :: msg :: Float32MultiArray > ( \"/accel_brake_map_calibrator/output/update_raw_map\" , durable_qos ) ; debug_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32MultiArrayStamped > ( \"/accel_brake_map_calibrator/output/debug_values\" , durable_qos ) ; current_map_error_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32Stamped > ( \"/accel_brake_map_calibrator/output/current_map_error\" , durable_qos ) ; updated_map_error_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32Stamped > ( \"/accel_brake_map_calibrator/output/updated_map_error\" , durable_qos ) ; map_error_ratio_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32Stamped > ( \"/accel_brake_map_calibrator/output/map_error_ratio\" , durable_qos ) ; // subscriber using std :: placeholders :: _1 ; using std :: placeholders :: _2 ; using std :: placeholders :: _3 ; velocity_sub_ = create_subscription < autoware_auto_vehicle_msgs :: msg :: VelocityReport > ( \"~/input/velocity\" , queue_size , std :: bind ( & AccelBrakeMapCalibrator :: callbackVelocity , this , _1 ) ) ; steer_sub_ = create_subscription < autoware_auto_vehicle_msgs :: msg :: SteeringReport > ( \"~/input/steer\" , queue_size , std :: bind ( & AccelBrakeMapCalibrator :: callbackSteer , this , _1 ) ) ; actuation_status_sub_ = create_subscription < tier4_vehicle_msgs :: msg :: ActuationStatusStamped > ( \"~/input/actuation_status\" , queue_size , std :: bind ( & AccelBrakeMapCalibrator :: callbackActuationStatus , this , _1 ) ) ; // Service update_map_dir_server_ = create_service < tier4_vehicle_msgs :: srv :: UpdateAccelBrakeMap > ( \"~/input/update_map_dir\" , std :: bind ( & AccelBrakeMapCalibrator :: callbackUpdateMapService , this , _1 , _2 , _3 ) ) ; // timer initTimer ( 1.0 / update_hz_ ) ; initOutputCSVTimer ( 30.0 ) ; }', '{ transform_listener_ = std :: make_shared < tier4_autoware_utils :: TransformListener > ( this ) ; // get parameter update_hz_ = this -> declare_parameter < double > ( \"update_hz\" , 10.0 ) ; covariance_ = this -> declare_parameter < double > ( \"initial_covariance\" , 0.05 ) ; velocity_min_threshold_ = this -> declare_parameter < double > ( \"velocity_min_threshold\" , 0.1 ) ; velocity_diff_threshold_ = this -> declare_parameter < double > ( \"velocity_diff_threshold\" , 0.556 ) ; pedal_diff_threshold_ = this -> declare_parameter < double > ( \"pedal_diff_threshold\" , 0.03 ) ; max_steer_threshold_ = this -> declare_parameter < double > ( \"max_steer_threshold\" , 0.2 ) ; max_pitch_threshold_ = this -> declare_parameter < double > ( \"max_pitch_threshold\" , 0.02 ) ; max_jerk_threshold_ = this -> declare_parameter < double > ( \"max_jerk_threshold\" , 0.7 ) ; pedal_velocity_thresh_ = this -> declare_parameter < double > ( \"pedal_velocity_thresh\" , 0.15 ) ; map_update_gain_ = this -> declare_parameter < double > ( \"map_update_gain\" , 0.02 ) ; max_accel_ = this -> declare_parameter < double > ( \"max_accel\" , 5.0 ) ; min_accel_ = this -> declare_parameter < double > ( \"min_accel\" , - 5.0 ) ; pedal_to_accel_delay_ = this -> declare_parameter < double > ( \"pedal_to_accel_delay\" , 0.3 ) ; max_data_count_ = this -> declare_parameter < int > ( \"max_data_count\" , 200 ) ; pedal_accel_graph_output_ = this -> declare_parameter < bool > ( \"pedal_accel_graph_output\" , false ) ; progress_file_output_ = this -> declare_parameter < bool > ( \"progress_file_output\" , false ) ; const auto get_pitch_method_str = this -> declare_parameter < std :: string > ( \"get_pitch_method\" , std :: string ( \"tf\" ) ) ; if ( get_pitch_method_str == std :: string ( \"tf\" ) ) { get_pitch_method_ = GET_PITCH_METHOD :: TF ; } else if ( get_pitch_method_str == std :: string ( \"none\" ) ) { get_pitch_method_ = GET_PITCH_METHOD :: NONE ; } else { RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"update_method_\" << \" is wrong. (available method: tf, file, none\" ) ; return ; } update_suggest_thresh_ = this -> declare_parameter < double > ( \"update_suggest_thresh\" , 0.7 ) ; csv_calibrated_map_dir_ = this -> declare_parameter < std :: string > ( \"csv_calibrated_map_dir\" , std :: string ( \"\" ) ) ; output_accel_file_ = csv_calibrated_map_dir_ + \"/accel_map.csv\" ; output_brake_file_ = csv_calibrated_map_dir_ + \"/brake_map.csv\" ; const std :: string update_method_str = this -> declare_parameter < std :: string > ( \"update_method\" , std :: string ( \"update_offset_each_cell\" ) ) ; if ( update_method_str == std :: string ( \"update_offset_each_cell\" ) ) { update_method_ = UPDATE_METHOD :: UPDATE_OFFSET_EACH_CELL ; } else if ( update_method_str == std :: string ( \"update_offset_total\" ) ) { update_method_ = UPDATE_METHOD :: UPDATE_OFFSET_TOTAL ; } else { RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"update_method\" << \" is wrong. (available method: update_offset_each_cell, update_offset_total\" ) ; return ; } // initializer // QoS setup static constexpr std :: size_t queue_size = 1 ; rclcpp :: QoS durable_qos ( queue_size ) ; // Publisher for checkUpdateSuggest calibration_status_pub_ = create_publisher < tier4_external_api_msgs :: msg :: CalibrationStatus > ( \"/accel_brake_map_calibrator/output/calibration_status\" , durable_qos ) ; /* Diagnostic Updater */ updater_ptr_ = std :: make_shared < diagnostic_updater :: Updater > ( this , 1.0 / update_hz_ ) ; updater_ptr_ -> setHardwareID ( \"accel_brake_map_calibrator\" ) ; updater_ptr_ -> add ( \"accel_brake_map_calibrator\" , this , & AccelBrakeMapCalibrator :: checkUpdateSuggest ) ; { csv_default_map_dir_ = this -> declare_parameter < std :: string > ( \"csv_default_map_dir\" , std :: string ( \"\" ) ) ; std :: string csv_path_accel_map = csv_default_map_dir_ + \"/accel_map.csv\" ; std :: string csv_path_brake_map = csv_default_map_dir_ + \"/brake_map.csv\" ; if ( ! accel_map_ . readAccelMapFromCSV ( csv_path_accel_map ) || ! new_accel_map_ . readAccelMapFromCSV ( csv_path_accel_map ) ) { is_default_map_ = false ; RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"Cannot read accelmap. csv path = \" << csv_path_accel_map . c_str ( ) << \". stop calculation.\" ) ; return ; } if ( ! brake_map_ . readBrakeMapFromCSV ( csv_path_brake_map ) || ! new_brake_map_ . readBrakeMapFromCSV ( csv_path_brake_map ) ) { is_default_map_ = false ; RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"Cannot read brakemap. csv path = \" << csv_path_brake_map . c_str ( ) << \". stop calculation.\" ) ; return ; } } std :: string output_log_file = this -> declare_parameter < std :: string > ( \"output_log_file\" , std :: string ( \"\" ) ) ; output_log_ . open ( output_log_file ) ; addIndexToCSV ( & output_log_ ) ; debug_values_ . data . resize ( num_debug_values_ ) ; // input map info accel_map_value_ = accel_map_ . getAccelMap ( ) ; brake_map_value_ = brake_map_ . getBrakeMap ( ) ; accel_vel_index_ = accel_map_ . getVelIdx ( ) ; brake_vel_index_ = brake_map_ . getVelIdx ( ) ; accel_pedal_index_ = accel_map_ . getThrottleIdx ( ) ; brake_pedal_index_ = brake_map_ . getBrakeIdx ( ) ; update_accel_map_value_ . resize ( ( accel_map_value_ . size ( ) ) ) ; update_brake_map_value_ . resize ( ( brake_map_value_ . size ( ) ) ) ; for ( auto & m : update_accel_map_value_ ) { m . resize ( accel_map_value_ . at ( 0 ) . size ( ) ) ; } for ( auto & m : update_brake_map_value_ ) { m . resize ( brake_map_value_ . at ( 0 ) . size ( ) ) ; } map_value_data_ . resize ( accel_map_value_ . size ( ) + brake_map_value_ . size ( ) - 1 ) ; for ( auto & m : map_value_data_ ) { m . resize ( accel_map_value_ . at ( 0 ) . size ( ) ) ; } std :: copy ( accel_map_value_ . begin ( ) , accel_map_value_ . end ( ) , update_accel_map_value_ . begin ( ) ) ; std :: copy ( brake_map_value_ . begin ( ) , brake_map_value_ . end ( ) , update_brake_map_value_ . begin ( ) ) ; // publisher update_suggest_pub_ = create_publisher < std_msgs :: msg :: Bool > ( \"~/output/update_suggest\" , durable_qos ) ; original_map_occ_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/original_occ_map\" , durable_qos ) ; update_map_occ_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/update_occ_map\" , durable_qos ) ; data_ave_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_average_occ_map\" , durable_qos ) ; data_std_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_std_dev_occ_map\" , durable_qos ) ; data_count_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_count_occ_map\" , durable_qos ) ; data_count_with_self_pose_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_count_self_pose_occ_map\" , durable_qos ) ; index_pub_ = create_publisher < visualization_msgs :: msg :: MarkerArray > ( \"/accel_brake_map_calibrator/debug/occ_index\" , durable_qos ) ; original_map_raw_pub_ = create_publisher < std_msgs :: msg :: Float32MultiArray > ( \"/accel_brake_map_calibrator/debug/original_raw_map\" , durable_qos ) ; update_map_raw_pub_ = create_publisher < std_msgs :: msg :: Float32MultiArray > ( \"/accel_brake_map_calibrator/output/update_raw_map\" , durable_qos ) ; debug_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32MultiArrayStamped > ( \"/accel_brake_map_calibrator/output/debug_values\" , durable_qos ) ; current_map_error_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32Stamped > ( \"/accel_brake_map_calibrator/output/current_map_error\" , durable_qos ) ; updated_map_error_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32Stamped > ( \"/accel_brake_map_calibrator/output/updated_map_error\" , durable_qos ) ; map_error_ratio_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32Stamped > ( \"/accel_brake_map_calibrator/output/map_error_ratio\" , durable_qos ) ; // subscriber using std :: placeholders :: _1 ; using std :: placeholders :: _2 ; using std :: placeholders :: _3 ; velocity_sub_ = create_subscription < autoware_auto_vehicle_msgs :: msg :: VelocityReport > ( \"~/input/velocity\" , queue_size , std :: bind ( & AccelBrakeMapCalibrator :: callbackVelocity , this , _1 ) ) ; steer_sub_ = create_subscription < autoware_auto_vehicle_msgs :: msg :: SteeringReport > ( \"~/input/steer\" , queue_size , std :: bind ( & AccelBrakeMapCalibrator :: callbackSteer , this , _1 ) ) ; actuation_status_sub_ = create_subscription < tier4_vehicle_msgs :: msg :: ActuationStatusStamped > ( \"~/input/actuation_status\" , queue_size , std :: bind ( & AccelBrakeMapCalibrator :: callbackActuationStatus , this , _1 ) ) ; // Service update_map_dir_server_ = create_service < tier4_vehicle_msgs :: srv :: UpdateAccelBrakeMap > ( \"~/input/update_map_dir\" , std :: bind ( & AccelBrakeMapCalibrator :: callbackUpdateMapService , this , _1 , _2 , _3 ) ) ; // timer initTimer ( 1.0 / update_hz_ ) ; initOutputCSVTimer ( 30.0 ) ; }']\n", + "[]\n", + "[]\n", + "['{ using std :: placeholders :: _1 ; using std :: placeholders :: _2 ; using std :: placeholders :: _3 ; // Parameter update_rate_ = this -> declare_parameter ( \"update_rate\" , 10.0 ) ; disengage_on_route_ = this -> declare_parameter ( \"disengage_on_route\" , true ) ; disengage_on_goal_ = this -> declare_parameter ( \"disengage_on_goal\" , true ) ; // Parameter for StateMachine state_param_ . th_arrived_distance_m = this -> declare_parameter ( \"th_arrived_distance_m\" , 1.0 ) ; const auto th_arrived_angle_deg = this -> declare_parameter ( \"th_arrived_angle_deg\" , 45.0 ) ; state_param_ . th_arrived_angle = tier4_autoware_utils :: deg2rad ( th_arrived_angle_deg ) ; state_param_ . th_stopped_time_sec = this -> declare_parameter ( \"th_stopped_time_sec\" , 1.0 ) ; state_param_ . th_stopped_velocity_mps = this -> declare_parameter ( \"th_stopped_velocity_mps\" , 0.01 ) ; // State Machine state_machine_ = std :: make_shared < StateMachine > ( state_param_ ) ; // Config topic_configs_ = getConfigs < TopicConfig > ( this -> get_node_parameters_interface ( ) , \"topic_configs\" ) ; tf_configs_ = getConfigs < TfConfig > ( this -> get_node_parameters_interface ( ) , \"tf_configs\" ) ; // Callback Groups callback_group_subscribers_ = this -> create_callback_group ( rclcpp :: CallbackGroupType :: MutuallyExclusive ) ; callback_group_services_ = this -> create_callback_group ( rclcpp :: CallbackGroupType :: MutuallyExclusive ) ; auto subscriber_option = rclcpp :: SubscriptionOptions ( ) ; subscriber_option . callback_group = callback_group_subscribers_ ; // Topic Callback for ( const auto & topic_config : topic_configs_ ) { registerTopicCallback ( topic_config . name , topic_config . type , topic_config . transient_local , topic_config . best_effort ) ; } // Subscriber sub_autoware_engage_ = this -> create_subscription < autoware_auto_vehicle_msgs :: msg :: Engage > ( \"input/autoware_engage\" , 1 , std :: bind ( & AutowareStateMonitorNode :: onAutowareEngage , this , _1 ) , subscriber_option ) ; sub_control_mode_ = this -> create_subscription < autoware_auto_vehicle_msgs :: msg :: ControlModeReport > ( \"input/control_mode\" , 1 , std :: bind ( & AutowareStateMonitorNode :: onVehicleControlMode , this , _1 ) , subscriber_option ) ; sub_map_ = create_subscription < autoware_auto_mapping_msgs :: msg :: HADMapBin > ( \"input/vector_map\" , rclcpp :: QoS { 1 } . transient_local ( ) , std :: bind ( & AutowareStateMonitorNode :: onMap , this , _1 ) , subscriber_option ) ; sub_route_ = this -> create_subscription < autoware_auto_planning_msgs :: msg :: HADMapRoute > ( \"input/route\" , rclcpp :: QoS { 1 } . transient_local ( ) , std :: bind ( & AutowareStateMonitorNode :: onRoute , this , _1 ) , subscriber_option ) ; sub_odom_ = this -> create_subscription < nav_msgs :: msg :: Odometry > ( \"input/odometry\" , 100 , std :: bind ( & AutowareStateMonitorNode :: onOdometry , this , _1 ) , subscriber_option ) ; // Service srv_shutdown_ = this -> create_service < std_srvs :: srv :: Trigger > ( \"service/shutdown\" , std :: bind ( & AutowareStateMonitorNode :: onShutdownService , this , _1 , _2 , _3 ) , rmw_qos_profile_services_default , callback_group_services_ ) ; srv_reset_route_ = this -> create_service < std_srvs :: srv :: Trigger > ( \"service/reset_route\" , std :: bind ( & AutowareStateMonitorNode :: onResetRouteService , this , _1 , _2 , _3 ) , rmw_qos_profile_services_default , callback_group_services_ ) ; // Publisher pub_autoware_state_ = this -> create_publisher < autoware_auto_system_msgs :: msg :: AutowareState > ( \"output/autoware_state\" , 1 ) ; pub_autoware_engage_ = this -> create_publisher < autoware_auto_vehicle_msgs :: msg :: Engage > ( \"output/autoware_engage\" , 1 ) ; // Diagnostic Updater setupDiagnosticUpdater ( ) ; // Wait for first topics std :: this_thread :: sleep_for ( std :: chrono :: milliseconds ( 1000 ) ) ; // Timer const auto period_ns = rclcpp :: Rate ( update_rate_ ) . period ( ) ; timer_ = rclcpp :: create_timer ( this , get_clock ( ) , period_ns , std :: bind ( & AutowareStateMonitorNode :: onTimer , this ) , callback_group_subscribers_ ) ; }', '{ using std :: placeholders :: _1 ; using std :: placeholders :: _2 ; using std :: placeholders :: _3 ; // Parameter update_rate_ = this -> declare_parameter ( \"update_rate\" , 10.0 ) ; disengage_on_route_ = this -> declare_parameter ( \"disengage_on_route\" , true ) ; disengage_on_goal_ = this -> declare_parameter ( \"disengage_on_goal\" , true ) ; // Parameter for StateMachine state_param_ . th_arrived_distance_m = this -> declare_parameter ( \"th_arrived_distance_m\" , 1.0 ) ; const auto th_arrived_angle_deg = this -> declare_parameter ( \"th_arrived_angle_deg\" , 45.0 ) ; state_param_ . th_arrived_angle = tier4_autoware_utils :: deg2rad ( th_arrived_angle_deg ) ; state_param_ . th_stopped_time_sec = this -> declare_parameter ( \"th_stopped_time_sec\" , 1.0 ) ; state_param_ . th_stopped_velocity_mps = this -> declare_parameter ( \"th_stopped_velocity_mps\" , 0.01 ) ; // State Machine state_machine_ = std :: make_shared < StateMachine > ( state_param_ ) ; // Config topic_configs_ = getConfigs < TopicConfig > ( this -> get_node_parameters_interface ( ) , \"topic_configs\" ) ; tf_configs_ = getConfigs < TfConfig > ( this -> get_node_parameters_interface ( ) , \"tf_configs\" ) ; // Callback Groups callback_group_subscribers_ = this -> create_callback_group ( rclcpp :: CallbackGroupType :: MutuallyExclusive ) ; callback_group_services_ = this -> create_callback_group ( rclcpp :: CallbackGroupType :: MutuallyExclusive ) ; auto subscriber_option = rclcpp :: SubscriptionOptions ( ) ; subscriber_option . callback_group = callback_group_subscribers_ ; // Topic Callback for ( const auto & topic_config : topic_configs_ ) { registerTopicCallback ( topic_config . name , topic_config . type , topic_config . transient_local , topic_config . best_effort ) ; } // Subscriber sub_autoware_engage_ = this -> create_subscription < autoware_auto_vehicle_msgs :: msg :: Engage > ( \"input/autoware_engage\" , 1 , std :: bind ( & AutowareStateMonitorNode :: onAutowareEngage , this , _1 ) , subscriber_option ) ; sub_control_mode_ = this -> create_subscription < autoware_auto_vehicle_msgs :: msg :: ControlModeReport > ( \"input/control_mode\" , 1 , std :: bind ( & AutowareStateMonitorNode :: onVehicleControlMode , this , _1 ) , subscriber_option ) ; sub_map_ = create_subscription < autoware_auto_mapping_msgs :: msg :: HADMapBin > ( \"input/vector_map\" , rclcpp :: QoS { 1 } . transient_local ( ) , std :: bind ( & AutowareStateMonitorNode :: onMap , this , _1 ) , subscriber_option ) ; sub_route_ = this -> create_subscription < autoware_auto_planning_msgs :: msg :: HADMapRoute > ( \"input/route\" , rclcpp :: QoS { 1 } . transient_local ( ) , std :: bind ( & AutowareStateMonitorNode :: onRoute , this , _1 ) , subscriber_option ) ; sub_odom_ = this -> create_subscription < nav_msgs :: msg :: Odometry > ( \"input/odometry\" , 100 , std :: bind ( & AutowareStateMonitorNode :: onOdometry , this , _1 ) , subscriber_option ) ; // Service srv_shutdown_ = this -> create_service < std_srvs :: srv :: Trigger > ( \"service/shutdown\" , std :: bind ( & AutowareStateMonitorNode :: onShutdownService , this , _1 , _2 , _3 ) , rmw_qos_profile_services_default , callback_group_services_ ) ; srv_reset_route_ = this -> create_service < std_srvs :: srv :: Trigger > ( \"service/reset_route\" , std :: bind ( & AutowareStateMonitorNode :: onResetRouteService , this , _1 , _2 , _3 ) , rmw_qos_profile_services_default , callback_group_services_ ) ; // Publisher pub_autoware_state_ = this -> create_publisher < autoware_auto_system_msgs :: msg :: AutowareState > ( \"output/autoware_state\" , 1 ) ; pub_autoware_engage_ = this -> create_publisher < autoware_auto_vehicle_msgs :: msg :: Engage > ( \"output/autoware_engage\" , 1 ) ; // Diagnostic Updater setupDiagnosticUpdater ( ) ; // Wait for first topics std :: this_thread :: sleep_for ( std :: chrono :: milliseconds ( 1000 ) ) ; // Timer const auto period_ns = rclcpp :: Rate ( update_rate_ ) . period ( ) ; timer_ = rclcpp :: create_timer ( this , get_clock ( ) , period_ns , std :: bind ( & AutowareStateMonitorNode :: onTimer , this ) , callback_group_subscribers_ ) ; }', '{ using std :: placeholders :: _1 ; using std :: placeholders :: _2 ; using std :: placeholders :: _3 ; // Parameter update_rate_ = this -> declare_parameter ( \"update_rate\" , 10.0 ) ; disengage_on_route_ = this -> declare_parameter ( \"disengage_on_route\" , true ) ; disengage_on_goal_ = this -> declare_parameter ( \"disengage_on_goal\" , true ) ; // Parameter for StateMachine state_param_ . th_arrived_distance_m = this -> declare_parameter ( \"th_arrived_distance_m\" , 1.0 ) ; const auto th_arrived_angle_deg = this -> declare_parameter ( \"th_arrived_angle_deg\" , 45.0 ) ; state_param_ . th_arrived_angle = tier4_autoware_utils :: deg2rad ( th_arrived_angle_deg ) ; state_param_ . th_stopped_time_sec = this -> declare_parameter ( \"th_stopped_time_sec\" , 1.0 ) ; state_param_ . th_stopped_velocity_mps = this -> declare_parameter ( \"th_stopped_velocity_mps\" , 0.01 ) ; // State Machine state_machine_ = std :: make_shared < StateMachine > ( state_param_ ) ; // Config topic_configs_ = getConfigs < TopicConfig > ( this -> get_node_parameters_interface ( ) , \"topic_configs\" ) ; tf_configs_ = getConfigs < TfConfig > ( this -> get_node_parameters_interface ( ) , \"tf_configs\" ) ; // Callback Groups callback_group_subscribers_ = this -> create_callback_group ( rclcpp :: CallbackGroupType :: MutuallyExclusive ) ; callback_group_services_ = this -> create_callback_group ( rclcpp :: CallbackGroupType :: MutuallyExclusive ) ; auto subscriber_option = rclcpp :: SubscriptionOptions ( ) ; subscriber_option . callback_group = callback_group_subscribers_ ; // Topic Callback for ( const auto & topic_config : topic_configs_ ) { registerTopicCallback ( topic_config . name , topic_config . type , topic_config . transient_local , topic_config . best_effort ) ; } // Subscriber sub_autoware_engage_ = this -> create_subscription < autoware_auto_vehicle_msgs :: msg :: Engage > ( \"input/autoware_engage\" , 1 , std :: bind ( & AutowareStateMonitorNode :: onAutowareEngage , this , _1 ) , subscriber_option ) ; sub_control_mode_ = this -> create_subscription < autoware_auto_vehicle_msgs :: msg :: ControlModeReport > ( \"input/control_mode\" , 1 , std :: bind ( & AutowareStateMonitorNode :: onVehicleControlMode , this , _1 ) , subscriber_option ) ; sub_map_ = create_subscription < autoware_auto_mapping_msgs :: msg :: HADMapBin > ( \"input/vector_map\" , rclcpp :: QoS { 1 } . transient_local ( ) , std :: bind ( & AutowareStateMonitorNode :: onMap , this , _1 ) , subscriber_option ) ; sub_route_ = this -> create_subscription < autoware_auto_planning_msgs :: msg :: HADMapRoute > ( \"input/route\" , rclcpp :: QoS { 1 } . transient_local ( ) , std :: bind ( & AutowareStateMonitorNode :: onRoute , this , _1 ) , subscriber_option ) ; sub_odom_ = this -> create_subscription < nav_msgs :: msg :: Odometry > ( \"input/odometry\" , 100 , std :: bind ( & AutowareStateMonitorNode :: onOdometry , this , _1 ) , subscriber_option ) ; // Service srv_shutdown_ = this -> create_service < std_srvs :: srv :: Trigger > ( \"service/shutdown\" , std :: bind ( & AutowareStateMonitorNode :: onShutdownService , this , _1 , _2 , _3 ) , rmw_qos_profile_services_default , callback_group_services_ ) ; srv_reset_route_ = this -> create_service < std_srvs :: srv :: Trigger > ( \"service/reset_route\" , std :: bind ( & AutowareStateMonitorNode :: onResetRouteService , this , _1 , _2 , _3 ) , rmw_qos_profile_services_default , callback_group_services_ ) ; // Publisher pub_autoware_state_ = this -> create_publisher < autoware_auto_system_msgs :: msg :: AutowareState > ( \"output/autoware_state\" , 1 ) ; pub_autoware_engage_ = this -> create_publisher < autoware_auto_vehicle_msgs :: msg :: Engage > ( \"output/autoware_engage\" , 1 ) ; // Diagnostic Updater setupDiagnosticUpdater ( ) ; // Wait for first topics std :: this_thread :: sleep_for ( std :: chrono :: milliseconds ( 1000 ) ) ; // Timer const auto period_ns = rclcpp :: Rate ( update_rate_ ) . period ( ) ; timer_ = rclcpp :: create_timer ( this , get_clock ( ) , period_ns , std :: bind ( & AutowareStateMonitorNode :: onTimer , this ) , callback_group_subscribers_ ) ; }', '{ using std :: placeholders :: _1 ; using std :: placeholders :: _2 ; using std :: placeholders :: _3 ; // Parameter update_rate_ = this -> declare_parameter ( \"update_rate\" , 10.0 ) ; disengage_on_route_ = this -> declare_parameter ( \"disengage_on_route\" , true ) ; disengage_on_goal_ = this -> declare_parameter ( \"disengage_on_goal\" , true ) ; // Parameter for StateMachine state_param_ . th_arrived_distance_m = this -> declare_parameter ( \"th_arrived_distance_m\" , 1.0 ) ; const auto th_arrived_angle_deg = this -> declare_parameter ( \"th_arrived_angle_deg\" , 45.0 ) ; state_param_ . th_arrived_angle = tier4_autoware_utils :: deg2rad ( th_arrived_angle_deg ) ; state_param_ . th_stopped_time_sec = this -> declare_parameter ( \"th_stopped_time_sec\" , 1.0 ) ; state_param_ . th_stopped_velocity_mps = this -> declare_parameter ( \"th_stopped_velocity_mps\" , 0.01 ) ; // State Machine state_machine_ = std :: make_shared < StateMachine > ( state_param_ ) ; // Config topic_configs_ = getConfigs < TopicConfig > ( this -> get_node_parameters_interface ( ) , \"topic_configs\" ) ; tf_configs_ = getConfigs < TfConfig > ( this -> get_node_parameters_interface ( ) , \"tf_configs\" ) ; // Callback Groups callback_group_subscribers_ = this -> create_callback_group ( rclcpp :: CallbackGroupType :: MutuallyExclusive ) ; callback_group_services_ = this -> create_callback_group ( rclcpp :: CallbackGroupType :: MutuallyExclusive ) ; auto subscriber_option = rclcpp :: SubscriptionOptions ( ) ; subscriber_option . callback_group = callback_group_subscribers_ ; // Topic Callback for ( const auto & topic_config : topic_configs_ ) { registerTopicCallback ( topic_config . name , topic_config . type , topic_config . transient_local , topic_config . best_effort ) ; } // Subscriber sub_autoware_engage_ = this -> create_subscription < autoware_auto_vehicle_msgs :: msg :: Engage > ( \"input/autoware_engage\" , 1 , std :: bind ( & AutowareStateMonitorNode :: onAutowareEngage , this , _1 ) , subscriber_option ) ; sub_control_mode_ = this -> create_subscription < autoware_auto_vehicle_msgs :: msg :: ControlModeReport > ( \"input/control_mode\" , 1 , std :: bind ( & AutowareStateMonitorNode :: onVehicleControlMode , this , _1 ) , subscriber_option ) ; sub_map_ = create_subscription < autoware_auto_mapping_msgs :: msg :: HADMapBin > ( \"input/vector_map\" , rclcpp :: QoS { 1 } . transient_local ( ) , std :: bind ( & AutowareStateMonitorNode :: onMap , this , _1 ) , subscriber_option ) ; sub_route_ = this -> create_subscription < autoware_auto_planning_msgs :: msg :: HADMapRoute > ( \"input/route\" , rclcpp :: QoS { 1 } . transient_local ( ) , std :: bind ( & AutowareStateMonitorNode :: onRoute , this , _1 ) , subscriber_option ) ; sub_odom_ = this -> create_subscription < nav_msgs :: msg :: Odometry > ( \"input/odometry\" , 100 , std :: bind ( & AutowareStateMonitorNode :: onOdometry , this , _1 ) , subscriber_option ) ; // Service srv_shutdown_ = this -> create_service < std_srvs :: srv :: Trigger > ( \"service/shutdown\" , std :: bind ( & AutowareStateMonitorNode :: onShutdownService , this , _1 , _2 , _3 ) , rmw_qos_profile_services_default , callback_group_services_ ) ; srv_reset_route_ = this -> create_service < std_srvs :: srv :: Trigger > ( \"service/reset_route\" , std :: bind ( & AutowareStateMonitorNode :: onResetRouteService , this , _1 , _2 , _3 ) , rmw_qos_profile_services_default , callback_group_services_ ) ; // Publisher pub_autoware_state_ = this -> create_publisher < autoware_auto_system_msgs :: msg :: AutowareState > ( \"output/autoware_state\" , 1 ) ; pub_autoware_engage_ = this -> create_publisher < autoware_auto_vehicle_msgs :: msg :: Engage > ( \"output/autoware_engage\" , 1 ) ; // Diagnostic Updater setupDiagnosticUpdater ( ) ; // Wait for first topics std :: this_thread :: sleep_for ( std :: chrono :: milliseconds ( 1000 ) ) ; // Timer const auto period_ns = rclcpp :: Rate ( update_rate_ ) . period ( ) ; timer_ = rclcpp :: create_timer ( this , get_clock ( ) , period_ns , std :: bind ( & AutowareStateMonitorNode :: onTimer , this ) , callback_group_subscribers_ ) ; }', '{ using std :: placeholders :: _1 ; using std :: placeholders :: _2 ; using std :: placeholders :: _3 ; // Parameter update_rate_ = this -> declare_parameter ( \"update_rate\" , 10.0 ) ; disengage_on_route_ = this -> declare_parameter ( \"disengage_on_route\" , true ) ; disengage_on_goal_ = this -> declare_parameter ( \"disengage_on_goal\" , true ) ; // Parameter for StateMachine state_param_ . th_arrived_distance_m = this -> declare_parameter ( \"th_arrived_distance_m\" , 1.0 ) ; const auto th_arrived_angle_deg = this -> declare_parameter ( \"th_arrived_angle_deg\" , 45.0 ) ; state_param_ . th_arrived_angle = tier4_autoware_utils :: deg2rad ( th_arrived_angle_deg ) ; state_param_ . th_stopped_time_sec = this -> declare_parameter ( \"th_stopped_time_sec\" , 1.0 ) ; state_param_ . th_stopped_velocity_mps = this -> declare_parameter ( \"th_stopped_velocity_mps\" , 0.01 ) ; // State Machine state_machine_ = std :: make_shared < StateMachine > ( state_param_ ) ; // Config topic_configs_ = getConfigs < TopicConfig > ( this -> get_node_parameters_interface ( ) , \"topic_configs\" ) ; tf_configs_ = getConfigs < TfConfig > ( this -> get_node_parameters_interface ( ) , \"tf_configs\" ) ; // Callback Groups callback_group_subscribers_ = this -> create_callback_group ( rclcpp :: CallbackGroupType :: MutuallyExclusive ) ; callback_group_services_ = this -> create_callback_group ( rclcpp :: CallbackGroupType :: MutuallyExclusive ) ; auto subscriber_option = rclcpp :: SubscriptionOptions ( ) ; subscriber_option . callback_group = callback_group_subscribers_ ; // Topic Callback for ( const auto & topic_config : topic_configs_ ) { registerTopicCallback ( topic_config . name , topic_config . type , topic_config . transient_local , topic_config . best_effort ) ; } // Subscriber sub_autoware_engage_ = this -> create_subscription < autoware_auto_vehicle_msgs :: msg :: Engage > ( \"input/autoware_engage\" , 1 , std :: bind ( & AutowareStateMonitorNode :: onAutowareEngage , this , _1 ) , subscriber_option ) ; sub_control_mode_ = this -> create_subscription < autoware_auto_vehicle_msgs :: msg :: ControlModeReport > ( \"input/control_mode\" , 1 , std :: bind ( & AutowareStateMonitorNode :: onVehicleControlMode , this , _1 ) , subscriber_option ) ; sub_map_ = create_subscription < autoware_auto_mapping_msgs :: msg :: HADMapBin > ( \"input/vector_map\" , rclcpp :: QoS { 1 } . transient_local ( ) , std :: bind ( & AutowareStateMonitorNode :: onMap , this , _1 ) , subscriber_option ) ; sub_route_ = this -> create_subscription < autoware_auto_planning_msgs :: msg :: HADMapRoute > ( \"input/route\" , rclcpp :: QoS { 1 } . transient_local ( ) , std :: bind ( & AutowareStateMonitorNode :: onRoute , this , _1 ) , subscriber_option ) ; sub_odom_ = this -> create_subscription < nav_msgs :: msg :: Odometry > ( \"input/odometry\" , 100 , std :: bind ( & AutowareStateMonitorNode :: onOdometry , this , _1 ) , subscriber_option ) ; // Service srv_shutdown_ = this -> create_service < std_srvs :: srv :: Trigger > ( \"service/shutdown\" , std :: bind ( & AutowareStateMonitorNode :: onShutdownService , this , _1 , _2 , _3 ) , rmw_qos_profile_services_default , callback_group_services_ ) ; srv_reset_route_ = this -> create_service < std_srvs :: srv :: Trigger > ( \"service/reset_route\" , std :: bind ( & AutowareStateMonitorNode :: onResetRouteService , this , _1 , _2 , _3 ) , rmw_qos_profile_services_default , callback_group_services_ ) ; // Publisher pub_autoware_state_ = this -> create_publisher < autoware_auto_system_msgs :: msg :: AutowareState > ( \"output/autoware_state\" , 1 ) ; pub_autoware_engage_ = this -> create_publisher < autoware_auto_vehicle_msgs :: msg :: Engage > ( \"output/autoware_engage\" , 1 ) ; // Diagnostic Updater setupDiagnosticUpdater ( ) ; // Wait for first topics std :: this_thread :: sleep_for ( std :: chrono :: milliseconds ( 1000 ) ) ; // Timer const auto period_ns = rclcpp :: Rate ( update_rate_ ) . period ( ) ; timer_ = rclcpp :: create_timer ( this , get_clock ( ) , period_ns , std :: bind ( & AutowareStateMonitorNode :: onTimer , this ) , callback_group_subscribers_ ) ; }']\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n", + "[]\n" + ] + }, + { + "ename": "KeyboardInterrupt", + "evalue": "", + "output_type": "error", + "traceback": [ + "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", + "\u001b[0;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)", + "\u001b[1;32m/mnt/c/Users/maxim/Projects/ma-autoware-dependency-digger/clang-digger.ipynb Cell 5'\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[39mfor\u001b[39;00m src_file, args \u001b[39min\u001b[39;00m compile_commands\u001b[39m.\u001b[39mitems():\n\u001b[1;32m 5\u001b[0m src_file: \u001b[39mstr\u001b[39m\n\u001b[0;32m----> 6\u001b[0m tu \u001b[39m=\u001b[39m idx\u001b[39m.\u001b[39;49mparse(src_file, args\u001b[39m=\u001b[39;49margs) \u001b[39m# 0x200: KeepGoing (after fatal errors)\u001b[39;00m\n\u001b[1;32m 7\u001b[0m h \u001b[39m=\u001b[39m ast_utils\u001b[39m.\u001b[39mTUHandler(tu)\n\u001b[1;32m 8\u001b[0m h\u001b[39m.\u001b[39mget_subscription_callback_handlers()\n", + "File \u001b[0;32m~/.local/lib/python3.10/site-packages/clang/cindex.py:2815\u001b[0m, in \u001b[0;36mIndex.parse\u001b[0;34m(self, path, args, unsaved_files, options)\u001b[0m\n\u001b[1;32m 2802\u001b[0m \u001b[39mdef\u001b[39;00m \u001b[39mparse\u001b[39m(\u001b[39mself\u001b[39m, path, args\u001b[39m=\u001b[39m\u001b[39mNone\u001b[39;00m, unsaved_files\u001b[39m=\u001b[39m\u001b[39mNone\u001b[39;00m, options \u001b[39m=\u001b[39m \u001b[39m0\u001b[39m):\n\u001b[1;32m 2803\u001b[0m \u001b[39m\"\"\"Load the translation unit from the given source code file by running\u001b[39;00m\n\u001b[1;32m 2804\u001b[0m \u001b[39m clang and generating the AST before loading. Additional command line\u001b[39;00m\n\u001b[1;32m 2805\u001b[0m \u001b[39m parameters can be passed to clang via the args parameter.\u001b[39;00m\n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 2813\u001b[0m \u001b[39m will be raised.\u001b[39;00m\n\u001b[1;32m 2814\u001b[0m \u001b[39m \"\"\"\u001b[39;00m\n\u001b[0;32m-> 2815\u001b[0m \u001b[39mreturn\u001b[39;00m TranslationUnit\u001b[39m.\u001b[39;49mfrom_source(path, args, unsaved_files, options,\n\u001b[1;32m 2816\u001b[0m \u001b[39mself\u001b[39;49m)\n", + "File \u001b[0;32m~/.local/lib/python3.10/site-packages/clang/cindex.py:2923\u001b[0m, in \u001b[0;36mTranslationUnit.from_source\u001b[0;34m(cls, filename, args, unsaved_files, options, index)\u001b[0m\n\u001b[1;32m 2920\u001b[0m unsaved_array[i]\u001b[39m.\u001b[39mcontents \u001b[39m=\u001b[39m contents\n\u001b[1;32m 2921\u001b[0m unsaved_array[i]\u001b[39m.\u001b[39mlength \u001b[39m=\u001b[39m \u001b[39mlen\u001b[39m(contents)\n\u001b[0;32m-> 2923\u001b[0m ptr \u001b[39m=\u001b[39m conf\u001b[39m.\u001b[39;49mlib\u001b[39m.\u001b[39;49mclang_parseTranslationUnit(index,\n\u001b[1;32m 2924\u001b[0m fspath(filename) \u001b[39mif\u001b[39;49;00m filename \u001b[39mis\u001b[39;49;00m \u001b[39mnot\u001b[39;49;00m \u001b[39mNone\u001b[39;49;00m \u001b[39melse\u001b[39;49;00m \u001b[39mNone\u001b[39;49;00m,\n\u001b[1;32m 2925\u001b[0m args_array,\n\u001b[1;32m 2926\u001b[0m \u001b[39mlen\u001b[39;49m(args), unsaved_array,\n\u001b[1;32m 2927\u001b[0m \u001b[39mlen\u001b[39;49m(unsaved_files), options)\n\u001b[1;32m 2929\u001b[0m \u001b[39mif\u001b[39;00m \u001b[39mnot\u001b[39;00m ptr:\n\u001b[1;32m 2930\u001b[0m \u001b[39mraise\u001b[39;00m TranslationUnitLoadError(\u001b[39m\"\u001b[39m\u001b[39mError parsing translation unit.\u001b[39m\u001b[39m\"\u001b[39m)\n", + "\u001b[0;31mKeyboardInterrupt\u001b[0m: " + ] + } + ], + "source": [ + "all_mappings = {}\n", + "idx = ci.Index.create()\n", + "\n", + "for src_file, args in compile_commands.items():\n", + " src_file: str\n", + " tu = idx.parse(src_file, args=args) # 0x200: KeepGoing (after fatal errors)\n", + " h = ast_utils.TUHandler(tu)\n", + " h.get_subscription_callback_handlers()\n", + "\n", + "with open(\"cb_identifiers.json\", \"w\") as f:\n", + " json.dump(all_mappings, f)" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": { + "collapsed": false, + "pycharm": { + "name": "#%%\n" + } + }, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3.10.5 64-bit", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.5" + }, + "orig_nbformat": 4, + "vscode": { + "interpreter": { + "hash": "8a94588eda9d64d9e9a351ab8144e55b1fabf5113b54e67dd26a8c27df0381b3" + } + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/digger.ipynb b/digger.ipynb new file mode 100644 index 0000000..189627d --- /dev/null +++ b/digger.ipynb @@ -0,0 +1,824 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 34, + "metadata": {}, + "outputs": [], + "source": [ + "import requests\n", + "import json\n", + "import pandas as pd\n", + "from urllib.parse import quote\n", + "\n", + "jj = lambda a, b: f\"{a.rstrip('/')}/{b.lstrip('/')}\"\n", + "\n", + "def pp(arg):\n", + " if isinstance(arg, str):\n", + " arg = json.loads(arg)\n", + " print(json.dumps(arg, indent=2, sort_keys=True))\n", + " \n", + "\n", + "API_URL = \"http://localhost:8080/api/v1\"\n", + "BASE_DIR = \"/home/max/projects/autoware/src\"\n", + "\n", + "headers = {'Authorization': \"Bearer TOKEN\"}" + ] + }, + { + "cell_type": "code", + "execution_count": 42, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/filter.cpp create_subscription 139 sub_input_ = create_subscription<PointCloud2>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/sensing/pointcloud_preprocessor/src/filter.cpp#create_subscription@139\n", + "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp create_subscription 70 emergency_state_sub_ = this->create_subscription<EmergencyState>( \n", + "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp bind 71 \"input/emergency_state\", 1, std::bind(&VehicleCmdGate::onEmergencyState, this, _1)); \n", + "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp create_subscription 72 external_emergency_stop_heartbeat_sub_ = this->create_subscription<Heartbeat>( \n", + "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp bind 74 std::bind(&VehicleCmdGate::onExternalEmergencyStopHeartbeat, this, _1)); \n", + "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp create_subscription 75 gate_mode_sub_ = this->create_subscription<GateMode>( \n", + "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp bind 76 \"input/gate_mode\", 1, std::bind(&VehicleCmdGate::onGateMode, this, _1)); \n", + "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp create_subscription 77 engage_sub_ = this->create_subscription<EngageMsg>( \n", + "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp bind 78 \"input/engage\", 1, std::bind(&VehicleCmdGate::onEngage, this, _1)); \n", + "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp create_subscription 79 steer_sub_ = this->create_subscription<SteeringReport>( \n", + "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp bind 80 \"input/steering\", 1, std::bind(&VehicleCmdGate::onSteering, this, _1)); \n", + "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp create_subscription 83 auto_control_cmd_sub_ = this->create_subscription<AckermannControlCommand>( \n", + "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp bind 84 \"input/auto/control_cmd\", 1, std::bind(&VehicleCmdGate::onAutoCtrlCmd, this, _1)); \n", + "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp create_subscription 86 auto_turn_indicator_cmd_sub_ = this->create_subscription<TurnIndicatorsCommand>( \n", + "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp bind 88 std::bind(&VehicleCmdGate::onAutoTurnIndicatorsCmd, this, _1)); \n", + "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp create_subscription 90 auto_hazard_light_cmd_sub_ = this->create_subscription<HazardLightsCommand>( \n", + "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp bind 91 \"input/auto/hazard_lights_cmd\", 1, std::bind(&VehicleCmdGate::onAutoHazardLightsCmd, this, _1)); \n", + "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp create_subscription 93 auto_gear_cmd_sub_ = this->create_subscription<GearCommand>( \n", + "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp bind 94 \"input/auto/gear_cmd\", 1, std::bind(&VehicleCmdGate::onAutoShiftCmd, this, _1)); \n", + "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp create_subscription 97 remote_control_cmd_sub_ = this->create_subscription<AckermannControlComman \n", + "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp bind 98 \"input/external/control_cmd\", 1, std::bind(&VehicleCmdGate::onRemoteCtrlCmd, this, _1)); \n", + "/universe/autoware.universe/system/system_monitor/test/src/cpu_monitor/test_tegra_cpu_monitor.cpp create_subscription 114 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", + "/universe/autoware.universe/system/system_monitor/test/src/cpu_monitor/test_tegra_cpu_monitor.cpp bind 115 \"/diagnostics\", 1000, std::bind(&TestCPUMonitor::diagCallback, monitor_.get(), _1)); \n", + "/universe/autoware.universe/simulator/fault_injection/src/fault_injection_node/fault_injection_node.cpp create_subscription 56 sub_simulation_events_ = this->create_subscription<SimulationEvents>( \n", + "/universe/autoware.universe/simulator/fault_injection/src/fault_injection_node/fault_injection_node.cpp bind 58 std::bind(&FaultInjectionNode::onSimulationEvents, this, _1)); \n", + "/universe/autoware.universe/planning/planning_evaluator/test/test_planning_evaluator_node.cpp create_subscription 85 metric_sub_ = rclcpp::create_subscription<DiagnosticArray>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/planning_evaluator/test/test_planning_evaluator_node.cpp#create_subscription@85\n", + "/universe/autoware.universe/control/lane_departure_checker/src/lane_departure_checker_node/lane_departure_checker_node.cpp create_subscription 148 sub_odom_ = this->create_subscription<nav_msgs::msg::Odometry>( \n", + "/universe/autoware.universe/control/lane_departure_checker/src/lane_departure_checker_node/lane_departure_checker_node.cpp bind 149 \"~/input/odometry\", 1, std::bind(&LaneDepartureCheckerNode::onOdometry, this, _1)); \n", + "/universe/autoware.universe/control/lane_departure_checker/src/lane_departure_checker_node/lane_departure_checker_node.cpp create_subscription 150 sub_lanelet_map_bin_ = this->create_subscription<HADMapBin>( \n", + "/universe/autoware.universe/control/lane_departure_checker/src/lane_departure_checker_node/lane_departure_checker_node.cpp bind 152 std::bind(&LaneDepartureCheckerNode::onLaneletMapBin, this, _1)); \n", + "/universe/autoware.universe/control/lane_departure_checker/src/lane_departure_checker_node/lane_departure_checker_node.cpp create_subscription 153 sub_route_ = this->create_subscription<HADMapRoute>( \n", + "/universe/autoware.universe/control/lane_departure_checker/src/lane_departure_checker_node/lane_departure_checker_node.cpp bind 155 std::bind(&LaneDepartureCheckerNode::onRoute, this, _1)); \n", + "/universe/autoware.universe/control/lane_departure_checker/src/lane_departure_checker_node/lane_departure_checker_node.cpp create_subscription 156 sub_reference_trajectory_ = this->create_subscription<Trajectory>( \n", + "/universe/autoware.universe/control/lane_departure_checker/src/lane_departure_checker_node/lane_departure_checker_node.cpp bind 158 std::bind(&LaneDepartureCheckerNode::onReferenceTrajectory, this, _1)); \n", + "/universe/autoware.universe/control/lane_departure_checker/src/lane_departure_checker_node/lane_departure_checker_node.cpp create_subscription 159 sub_predicted_trajectory_ = this->create_subscription<Trajectory>( \n", + "/universe/autoware.universe/control/lane_departure_checker/src/lane_departure_checker_node/lane_departure_checker_node.cpp bind 161 std::bind(&LaneDepartureCheckerNode::onPredictedTrajectory, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/emergency.cpp create_subscription 35 sub_emergency_ = create_subscription<tier4_external_api_msgs::msg::Emergency>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/emergency.cpp bind 36 \"/api/autoware/get/emergency\", rclcpp::QoS(1), std::bind(&Emergency::getEmergency, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rosbag_logging_mode.cpp create_subscription 38 create_subscription<tier4_external_api_msgs::msg::RosbagLoggingMode>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rosbag_logging_mode.cpp bind 40 std::bind(&RosbagLoggingMode::onRosbagLoggingMode, this, _1)); \n", + "/universe/autoware.universe/system/emergency_handler/src/emergency_handler/emergency_handler_core.cpp create_subscription 34 create_subscription<autoware_auto_system_msgs::msg::HazardStatusStamped>( \n", + "/universe/autoware.universe/system/emergency_handler/src/emergency_handler/emergency_handler_core.cpp bind 36 std::bind(&EmergencyHandler::onHazardStatusStamped, this, _1)); \n", + "/universe/autoware.universe/system/emergency_handler/src/emergency_handler/emergency_handler_core.cpp create_subscription 38 create_subscription<autoware_auto_control_msgs::msg::AckermannControlCommand>( \n", + "/universe/autoware.universe/system/emergency_handler/src/emergency_handler/emergency_handler_core.cpp bind 40 std::bind(&EmergencyHandler::onPrevControlCommand, this, _1)); \n", + "/universe/autoware.universe/system/emergency_handler/src/emergency_handler/emergency_handler_core.cpp create_subscription 41 sub_odom_ = create_subscription<nav_msgs::msg::Odometry>( \n", + "/universe/autoware.universe/system/emergency_handler/src/emergency_handler/emergency_handler_core.cpp bind 42 \"~/input/odometry\", rclcpp::QoS{1}, std::bind(&EmergencyHandler::onOdometry, this, _1)); \n", + "/universe/autoware.universe/system/emergency_handler/src/emergency_handler/emergency_handler_core.cpp create_subscription 44 sub_control_mode_ = create_subscription<autoware_auto_vehicle_msgs::msg::ControlModeReport>( \n", + "/universe/autoware.universe/system/emergency_handler/src/emergency_handler/emergency_handler_core.cpp bind 45 \"~/input/control_mode\", rclcpp::QoS{1}, std::bind(&EmergencyHandler::onControlMode, this, _1)); \n", + "/universe/autoware.universe/simulator/dummy_perception_publisher/src/node.cpp create_subscription 92 object_sub_ = this->create_subscription<dummy_perception_publisher::msg::Object>( \n", + "/universe/autoware.universe/simulator/dummy_perception_publisher/src/node.cpp bind 94 std::bind(&DummyPerceptionPublisherNode::objectCallback, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/localization/stop_filter/src/stop_filter.cpp create_subscription 38 sub_odom_ = create_subscription<nav_msgs::msg::Odometry>( \n", + "/universe/autoware.universe/localization/stop_filter/src/stop_filter.cpp bind 39 \"input/odom\", 1, std::bind(&StopFilter::callbackOdometry, this, _1)); \n", + "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/trajectory_visualizer.py create_subscription 114 self.sub_localization_twist = self.create_subscription( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/trajectory_visualizer.py#create_subscription@114\n", + "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/trajectory_visualizer.py create_subscription 117 self.sub_vehicle_twist = self.create_subscription( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/trajectory_visualizer.py#create_subscription@117\n", + "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/trajectory_visualizer.py create_subscription 121 self.sub_external_velocity_limit = self.create_subscription( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/trajectory_visualizer.py#create_subscription@121\n", + "/universe/autoware.universe/sensing/livox/livox_tag_filter/src/livox_tag_filter_node/livox_tag_filter_node.cpp create_subscription 46 sub_pointcloud_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", + "/universe/autoware.universe/sensing/livox/livox_tag_filter/src/livox_tag_filter_node/livox_tag_filter_node.cpp bind 47 \"input\", rclcpp::SensorDataQoS(), std::bind(&LivoxTagFilterNode::onPointCloud, this, _1)); \n", + "/universe/external/grid_map/grid_map_demos/src/ImageToGridmapDemo.cpp create_subscription 24 this->create_subscription<sensor_msgs::msg::Image>( \n", + "/universe/external/grid_map/grid_map_demos/src/ImageToGridmapDemo.cpp bind 26 std::bind(&ImageToGridmapDemo::imageCallback, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/system/system_monitor/test/src/gpu_monitor/test_unknown_gpu_monitor.cpp create_subscription 61 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", + "/universe/autoware.universe/system/system_monitor/test/src/gpu_monitor/test_unknown_gpu_monitor.cpp bind 62 \"/diagnostics\", 1000, std::bind(&TestGPUMonitor::diagCallback, monitor_.get(), _1)); \n", + "/universe/autoware.universe/planning/motion_velocity_smoother/src/motion_velocity_smoother_node.cpp create_subscription 81 sub_current_trajectory_ = create_subscription<Trajectory>( \n", + "/universe/autoware.universe/planning/motion_velocity_smoother/src/motion_velocity_smoother_node.cpp bind 82 \"~/input/trajectory\", 1, std::bind(&MotionVelocitySmootherNode::onCurrentTrajectory, this, _1)); \n", + "/universe/autoware.universe/planning/motion_velocity_smoother/src/motion_velocity_smoother_node.cpp create_subscription 83 sub_current_odometry_ = create_subscription<Odometry>( \n", + "/universe/autoware.universe/planning/motion_velocity_smoother/src/motion_velocity_smoother_node.cpp bind 85 std::bind(&MotionVelocitySmootherNode::onCurrentOdometry, this, _1)); \n", + "/universe/autoware.universe/planning/motion_velocity_smoother/src/motion_velocity_smoother_node.cpp create_subscription 86 sub_external_velocity_limit_ = create_subscription<VelocityLimit>( \n", + "/universe/autoware.universe/planning/motion_velocity_smoother/src/motion_velocity_smoother_node.cpp bind 88 std::bind(&MotionVelocitySmootherNode::onExternalVelocityLimit, this, _1)); \n", + "/universe/autoware.universe/perception/traffic_light_visualization/src/traffic_light_map_visualizer/node.cpp create_subscription 123 tl_state_sub_ = create_subscription<autoware_auto_perception_msgs::msg::TrafficSignalArray>( \n", + "/universe/autoware.universe/perception/traffic_light_visualization/src/traffic_light_map_visualizer/node.cpp bind 125 std::bind(&TrafficLightMapVisualizerNode::trafficSignalsCallback, this, _1)); \n", + "/universe/autoware.universe/perception/traffic_light_visualization/src/traffic_light_map_visualizer/node.cpp create_subscription 126 vector_map_sub_ = create_subscription<autoware_auto_mapping_msgs::msg::HADMapBin>( \n", + "/universe/autoware.universe/perception/traffic_light_visualization/src/traffic_light_map_visualizer/node.cpp bind 128 std::bind(&TrafficLightMapVisualizerNode::binMapCallback, this, _1)); \n", + "/universe/autoware.universe/simulator/fault_injection/test/test_fault_injection_node.test.py create_subscription 103 self.test_node.create_subscription( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/simulator/fault_injection/test/test_fault_injection_node.test.py#create_subscription@103\n", + "/universe/autoware.universe/common/fake_test_node/test/test_fake_test_node.cpp create_subscription 47 m_sub{this->create_subscription<Int32>(\"/input_topic\", 10, [&](const Int32::SharedPtr msg) { \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/common/fake_test_node/test/test_fake_test_node.cpp#create_subscription@47\n", + "/universe/autoware.universe/common/fake_test_node/test/test_fake_test_node.cpp create_subscription 69 auto result_odom_subscription = fixture->template create_subscription<Bool>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/common/fake_test_node/test/test_fake_test_node.cpp#create_subscription@69\n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp create_subscription 97 this->create_subscription<autoware_auto_planning_msgs::msg::PathWithLaneId>( \n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp bind 98 \"~/input/path_with_lane_id\", 1, std::bind(&BehaviorVelocityPlannerNode::onTrigger, this, _1), \n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp create_subscription 103 this->create_subscription<autoware_auto_perception_msgs::msg::PredictedObjects>( \n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp bind 105 std::bind(&BehaviorVelocityPlannerNode::onPredictedObjects, this, _1), \n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp create_subscription 107 sub_no_ground_pointcloud_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp bind 109 std::bind(&BehaviorVelocityPlannerNode::onNoGroundPointCloud, this, _1), \n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp create_subscription 111 sub_vehicle_odometry_ = this->create_subscription<nav_msgs::msg::Odometry>( \n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp bind 113 std::bind(&BehaviorVelocityPlannerNode::onVehicleVelocity, this, _1), \n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp create_subscription 115 sub_lanelet_map_ = this->create_subscription<autoware_auto_mapping_msgs::msg::HADMapBin>( \n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp bind 117 std::bind(&BehaviorVelocityPlannerNode::onLaneletMap, this, _1), \n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp create_subscription 120 this->create_subscription<autoware_auto_perception_msgs::msg::TrafficSignalArray>( \n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp bind 122 std::bind(&BehaviorVelocityPlannerNode::onTrafficSignals, this, _1), \n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp create_subscription 124 sub_external_crosswalk_states_ = this->create_subscription<tier4_api_msgs::msg::CrosswalkStatus>( \n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp bind 126 std::bind(&BehaviorVelocityPlannerNode::onExternalCrosswalkStates, this, _1), \n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp create_subscription 129 this->create_subscription<tier4_api_msgs::msg::IntersectionStatus>( \n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp bind 131 std::bind(&BehaviorVelocityPlannerNode::onExternalIntersectionStates, this, _1)); \n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp create_subscription 132 sub_external_velocity_limit_ = this->create_subscription<VelocityLimit>( \n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp bind 134 std::bind(&BehaviorVelocityPlannerNode::onExternalVelocityLimit, this, _1)); \n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp create_subscription 136 this->create_subscription<autoware_auto_perception_msg \n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp bind 138 std::bind(&BehaviorVelocityPlannerNode::onExternalTrafficSignals, this, _1), \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/map.cpp create_subscription 34 sub_map_info_ = create_subscription<tier4_external_api_msgs::msg::MapHash>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/map.cpp bind 36 std::bind(&Map::getMapHash, this, _1)); \n", + "/universe/autoware.universe/system/system_monitor/test/src/ntp_monitor/test_ntp_monitor.cpp create_subscription 100 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", + "/universe/autoware.universe/system/system_monitor/test/src/ntp_monitor/test_ntp_monitor.cpp bind 101 \"/diagnostics\", 1000, std::bind(&TestNTPMonitor::diagCallback, monitor_.get(), _1)); \n", + "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp create_subscription 89 sub_init_pose_ = create_subscription<PoseWithCovarianceStamped>( \n", + "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp bind 90 \"/initialpose\", QoS{1}, std::bind(&SimplePlanningSimulator::on_initialpose, this, _1)); \n", + "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp create_subscription 91 sub_ackermann_cmd_ = create_subscription<AckermannControlCommand>( \n", + "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp bind 93 std::bind(&SimplePlanningSimulator::on_ackermann_cmd, this, _1)); \n", + "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp create_subscription 94 sub_gear_cmd_ = create_subscription<GearCommand>( \n", + "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp bind 95 \"input/gear_command\", QoS{1}, std::bind(&SimplePlanningSimulator::on_gear_cmd, this, _1)); \n", + "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp create_subscription 96 sub_turn_indicators_cmd_ = create_subscription<TurnIndicatorsCommand>( \n", + "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp bind 98 std::bind(&SimplePlanningSimulator::on_turn_indicators_cmd, this, _1)); \n", + "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp create_subscription 99 sub_hazard_lights_cmd_ = create_subscription<HazardLightsCommand>( \n", + "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp bind 101 std::bind(&SimplePlanningSimulator::on_hazard_lights_cmd, this, _1)); \n", + "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp create_subscription 102 sub_trajectory_ = create_subscription<Trajectory>( \n", + "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp bind 103 \"input/trajectory\", QoS{1}, std::bind(&SimplePlanningSimulator::on_trajectory, this, _1)); \n", + "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp create_subscription 104 sub_engage_ = create_subscription<Engage>( \n", + "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp bind 105 \"input/engage\", rclcpp::QoS{1}, std::bind(&SimplePlanningSimulator::on_engage, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/velocity.cpp create_subscription 33 sub_planning_velocity_ = create_subscription<tier4_planning_msgs::msg::VelocityLimit>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/velocity.cpp bind 35 std::bind(&Velocity::onVelocityLimit, this, _1)); \n", + "/universe/autoware.universe/system/system_error_monitor/src/system_error_monitor_core.cpp create_subscription 251 sub_diag_array_ = create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", + "/universe/autoware.universe/system/system_error_monitor/src/system_error_monitor_core.cpp bind 252 \"input/diag_array\", rclcpp::QoS{1}, std::bind(&AutowareErrorMonitor::onDiagArray, this, _1)); \n", + "/universe/autoware.universe/system/system_error_monitor/src/system_error_monitor_core.cpp create_subscription 253 sub_current_gate_mode_ = create_subscription<tier4_control_msgs::msg::GateMode>( \n", + "/universe/autoware.universe/system/system_error_monitor/src/system_error_monitor_core.cpp bind 255 std::bind(&AutowareErrorMonitor::onCurrentGateMode, this, _1)); \n", + "/universe/autoware.universe/system/system_error_monitor/src/system_error_monitor_core.cpp create_subscription 256 sub_autoware_state_ = create_subscription<autoware_auto_system_msgs::msg::AutowareState>( \n", + "/universe/autoware.universe/system/system_error_monitor/src/system_error_monitor_core.cpp bind 258 std::bind(&AutowareErrorMonitor::onAutowareState, this, _1)); \n", + "/universe/autoware.universe/system/system_error_monitor/src/system_error_monitor_core.cpp create_subscription 259 sub_control_mode_ = create_subscription<autoware_auto_vehicle_msgs::msg::ControlModeReport>( \n", + "/universe/autoware.universe/system/system_error_monitor/src/system_error_monitor_core.cpp bind 261 std::bind(&AutowareErrorMonitor::onControlMode, this, _1)); \n", + "/universe/autoware.universe/perception/detected_object_feature_remover/src/detected_object_feature_remover.cpp create_subscription 23 sub_ = this->create_subscription<DetectedObjectsWithFeature>( \n", + "/universe/autoware.universe/perception/detected_object_feature_remover/src/detected_object_feature_remover.cpp bind 24 \"~/input\", 1, std::bind(&DetectedObjectFeatureRemover::objectCallback, this, _1)); \n", + "/universe/autoware.universe/planning/obstacle_avoidance_planner/src/node.cpp create_subscription 259 path_sub_ = create_subscription<autoware_auto_planning_msgs::msg::Path>( \n", + "/universe/autoware.universe/planning/obstacle_avoidance_planner/src/node.cpp bind 261 std::bind(&ObstacleAvoidancePlanner::pathCallback, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/planning/obstacle_avoidance_planner/src/node.cpp create_subscription 262 odom_sub_ = create_subscription<nav_msgs::msg::Odometry>( \n", + "/universe/autoware.universe/planning/obstacle_avoidance_planner/src/node.cpp bind 264 std::bind(&ObstacleAvoidancePlanner::odomCallback, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/planning/obstacle_avoidance_planner/src/node.cpp create_subscription 265 objects_sub_ = create_subscription<autoware_auto_perception_msgs::msg::PredictedObjects>( \n", + "/universe/autoware.universe/planning/obstacle_avoidance_planner/src/node.cpp bind 267 std::bind(&ObstacleAvoidancePlanner::objectsCallback, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/planning/obstacle_avoidance_planner/src/node.cpp create_subscription 268 is_avoidance_sub_ = create_subscription<tier4_planning_msgs::msg::EnableAvoidance>( \n", + "/universe/autoware.universe/planning/obstacle_avoidance_planner/src/node.cpp bind 270 std::bind(&ObstacleAvoidancePlanner::enableAvoidanceCallback, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/perception/euclidean_cluster/src/voxel_grid_based_euclidean_cluster_node.cpp create_subscription 37 pointcloud_sub_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", + "/universe/autoware.universe/perception/euclidean_cluster/src/voxel_grid_based_euclidean_cluster_node.cpp bind 39 std::bind(&VoxelGridBasedEuclideanClusterNode::onPointCloud, this, _1)); \n", + "/universe/autoware.universe/localization/twist2accel/src/twist2accel.cpp create_subscription 35 sub_odom_ = create_subscription<nav_msgs::msg::Odometry>( \n", + "/universe/autoware.universe/localization/twist2accel/src/twist2accel.cpp bind 36 \"input/odom\", 1, std::bind(&Twist2Accel::callbackOdometry, this, _1)); \n", + "/universe/autoware.universe/localization/twist2accel/src/twist2accel.cpp create_subscription 37 sub_twist_ = create_subscription<geometry_msgs::msg::TwistWithCovarianceStamped>( \n", + "/universe/autoware.universe/localization/twist2accel/src/twist2accel.cpp bind 38 \"input/twist\", 1, std::bind(&Twist2Accel::callbackTwistWithCovariance, this, _1)); \n", + "/universe/autoware.universe/planning/obstacle_stop_planner/src/node.cpp create_subscription 524 obstacle_pointcloud_sub_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", + "/universe/autoware.universe/planning/obstacle_stop_planner/src/node.cpp bind 526 std::bind(&ObstacleStopPlannerNode::obstaclePointcloudCallback, this, std::placeholders::_1), \n", + "/universe/autoware.universe/planning/obstacle_stop_planner/src/node.cpp create_subscription 528 path_sub_ = this->create_subscription<Trajectory>( \n", + "/universe/autoware.universe/planning/obstacle_stop_planner/src/node.cpp bind 530 std::bind(&ObstacleStopPlannerNode::pathCallback, this, std::placeholders::_1), \n", + "/universe/autoware.universe/planning/obstacle_stop_planner/src/node.cpp create_subscription 532 current_velocity_sub_ = this->create_subscription<nav_msgs::msg::Odometry>( \n", + "/universe/autoware.universe/planning/obstacle_stop_planner/src/node.cpp bind 534 std::bind(&ObstacleStopPlannerNode::currentVelocityCallback, this, std::placeholders::_1), \n", + "/universe/autoware.universe/planning/obstacle_stop_planner/src/node.cpp create_subscription 536 dynamic_object_sub_ = this->create_subscription<PredictedObjects>( \n", + "/universe/autoware.universe/planning/obstacle_stop_planner/src/node.cpp bind 538 std::bind(&ObstacleStopPlannerNode::dynamicObjectCallback, this, std::placeholders::_1), \n", + "/universe/autoware.universe/planning/obstacle_stop_planner/src/node.cpp create_subscription 540 expand_stop_range_sub_ = this->create_subscription<ExpandStopRange>( \n", + "/universe/autoware.universe/planning/obstacle_stop_planner/src/node.cpp bind 542 std::bind( \n", + "/universe/autoware.universe/system/system_monitor/test/src/cpu_monitor/test_raspi_cpu_monitor.cpp create_subscription 113 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", + "/universe/autoware.universe/system/system_monitor/test/src/cpu_monitor/test_raspi_cpu_monitor.cpp bind 114 \"/diagnostics\", 1000, std::bind(&TestCPUMonitor::diagCallback, monitor_.get(), _1)); \n", + "/sensor_component/external/tamagawa_imu_driver/src/tag_can_driver.cpp create_subscription 104 rclcpp::Subscription<can_msgs::msg::Frame>::SharedPtr sub = node->create_subscription<can_msgs::msg::Frame>(\"/can/imu\", 100, receive_CAN);\n", + "[WARN] Could not find matching bind statement for /sensor_component/external/tamagawa_imu_driver/src/tag_can_driver.cpp#create_subscription@104\n", + "/universe/autoware.universe/localization/initial_pose_button_panel/src/initial_pose_button_panel.cpp create_subscription 66 pose_cov_sub_ = raw_node->create_subscription<geometry_msgs::msg::PoseWithCovarianceStamped>( \n", + "/universe/autoware.universe/localization/initial_pose_button_panel/src/initial_pose_button_panel.cpp bind 68 std::bind(&InitialPoseButtonPanel::callbackPoseCov, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/localization/initial_pose_button_panel/src/initial_pose_button_panel.cpp create_subscription 87 pose_cov_sub_ = raw_node->create_subscription<geometry_msgs::msg::PoseWithCovarianceStamped>( \n", + "/universe/autoware.universe/localization/initial_pose_button_panel/src/initial_pose_button_panel.cpp bind 89 std::bind(&InitialPoseButtonPanel::callbackPoseCov, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/common/tier4_autoware_utils/include/tier4_autoware_utils/system/heartbeat_checker.hpp create_subscription 30 sub_heartbeat_ = node.create_subscription<HeartbeatMsg>( \n", + "/universe/autoware.universe/common/tier4_autoware_utils/include/tier4_autoware_utils/system/heartbeat_checker.hpp bind 31 topic_name, rclcpp::QoS{1}, std::bind(&HeaderlessHeartbeatChecker::onHeartbeat, this, _1)); \n", + "/universe/autoware.universe/control/trajectory_follower_nodes/src/lateral_controller_node.cpp create_subscription 142 m_sub_ref_path = create_subscription<autoware_auto_planning_msgs::msg::Trajectory>( \n", + "/universe/autoware.universe/control/trajectory_follower_nodes/src/lateral_controller_node.cpp bind 144 std::bind(&LateralController::onTrajectory, this, _1)); \n", + "/universe/autoware.universe/control/trajectory_follower_nodes/src/lateral_controller_node.cpp create_subscription 145 m_sub_steering = create_subscription<autoware_auto_vehicle_msgs::msg::SteeringReport>( \n", + "/universe/autoware.universe/control/trajectory_follower_nodes/src/lateral_controller_node.cpp bind 147 std::bind(&LateralController::onSteering, this, _1)); \n", + "/universe/autoware.universe/control/trajectory_follower_nodes/src/lateral_controller_node.cpp create_subscription 148 m_sub_odometry = create_subscription<nav_msgs::msg::Odometry>( \n", + "/universe/autoware.universe/control/trajectory_follower_nodes/src/lateral_controller_node.cpp bind 150 std::bind(&LateralController::onOdometry, this, _1)); \n", + "/universe/autoware.universe/map/map_tf_generator/src/map_tf_generator_node.cpp create_subscription 41 sub_ = create_subscription<sensor_msgs::msg::PointCloud2>( \n", + "/universe/autoware.universe/map/map_tf_generator/src/map_tf_generator_node.cpp bind 43 std::bind(&MapTFGeneratorNode::onPointCloud, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/system/system_monitor/test/src/cpu_monitor/test_arm_cpu_monitor.cpp create_subscription 113 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", + "/universe/autoware.universe/system/system_monitor/test/src/cpu_monitor/test_arm_cpu_monitor.cpp bind 114 \"/diagnostics\", 1000, std::bind(&TestCPUMonitor::diagCallback, monitor_.get(), _1)); \n", + "/universe/autoware.universe/control/obstacle_collision_checker/src/obstacle_collision_checker_node/obstacle_collision_checker_node.cpp create_subscription 72 sub_obstacle_pointcloud_ = create_subscription<sensor_msgs::msg::PointCloud2>( \n", + "/universe/autoware.universe/control/obstacle_collision_checker/src/obstacle_collision_checker_node/obstacle_collision_checker_node.cpp bind 74 std::bind(&ObstacleCollisionCheckerNode::onObstaclePointcloud, this, _1)); \n", + "/universe/autoware.universe/control/obstacle_collision_checker/src/obstacle_collision_checker_node/obstacle_collision_checker_node.cpp create_subscription 75 sub_reference_trajectory_ = create_subscription<autoware_auto_planning_msgs::msg::Trajectory>( \n", + "/universe/autoware.universe/control/obstacle_collision_checker/src/obstacle_collision_checker_node/obstacle_collision_checker_node.cpp bind 77 std::bind(&ObstacleCollisionCheckerNode::onReferenceTrajectory, this, _1)); \n", + "/universe/autoware.universe/control/obstacle_collision_checker/src/obstacle_collision_checker_node/obstacle_collision_checker_node.cpp create_subscription 78 sub_predicted_trajectory_ = create_subscription<autoware_auto_planning_msgs::msg::Trajectory>( \n", + "/universe/autoware.universe/control/obstacle_collision_checker/src/obstacle_collision_checker_node/obstacle_collision_checker_node.cpp bind 80 std::bind(&ObstacleCollisionCheckerNode::onPredictedTrajectory, this, _1)); \n", + "/universe/autoware.universe/control/obstacle_collision_checker/src/obstacle_collision_checker_node/obstacle_collision_checker_node.cpp create_subscription 81 sub_odom_ = create_subscription<nav_msgs::msg::Odometry>( \n", + "/universe/autoware.universe/control/obstacle_collision_checker/src/obstacle_collision_checker_node/obstacle_collision_checker_node.cpp bind 82 \"input/odometry\", 1, std::bind(&ObstacleCollisionCheckerNode::onOdom, this, _1)); \n", + "/universe/autoware.universe/control/joy_controller/src/joy_controller/joy_controller_node.cpp create_subscription 476 sub_joy_ = this->create_subscription<sensor_msgs::msg::Joy>( \n", + "/universe/autoware.universe/control/joy_controller/src/joy_controller/joy_controller_node.cpp bind 477 \"input/joy\", 1, std::bind(&AutowareJoyControllerNode::onJoy, this, std::placeholders::_1), \n", + "/universe/autoware.universe/control/joy_controller/src/joy_controller/joy_controller_node.cpp create_subscription 479 sub_odom_ = this->create_subscription<nav_msgs::msg::Odometry>( \n", + "/universe/autoware.universe/control/joy_controller/src/joy_controller/joy_controller_node.cpp bind 481 std::bind(&AutowareJoyControllerNode::onOdometry, this, std::placeholders::_1), \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/start.cpp create_subscription 28 sub_get_operator_ = create_subscription<tier4_external_api_msgs::msg::Operator>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/start.cpp bind 29 \"/api/external/get/operator\", rclcpp::QoS(1), std::bind(&Start::getOperator, this, _1)); \n", + "/universe/autoware.universe/planning/behavior_path_planner/src/scene_module/side_shift/side_shift_module.cpp create_subscription 62 lateral_offset_subscriber_ = node.create_subscription<LateralOffset>( \n", + "/universe/autoware.universe/planning/behavior_path_planner/src/scene_module/side_shift/side_shift_module.cpp bind 63 \"~/input/lateral_offset\", 1, std::bind(&SideShiftModule::onLateralOffset, this, _1)); \n", + "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp create_subscription 89 velocity_subscriber_ = create_subscription<Odometry>( \n", + "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp bind 90 \"~/input/odometry\", 1, std::bind(&BehaviorPathPlannerNode::onVelocity, this, _1), \n", + "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp create_subscription 92 perception_subscriber_ = create_subscription<PredictedObjects>( \n", + "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp bind 93 \"~/input/perception\", 1, std::bind(&BehaviorPathPlannerNode::onPerception, this, _1), \n", + "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp create_subscription 95 scenario_subscriber_ = create_subscription<Scenario>( \n", + "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp bind 103 std::bind(&BehaviorPathPlannerNode::onExternalApproval, this, _1), \n", + "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp create_subscription 101 external_approval_subscriber_ = create_subscription<ApprovalMsg>( \n", + "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp bind 103 std::bind(&BehaviorPathPlannerNode::onExternalApproval, this, _1), \n", + "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp create_subscription 105 force_approval_subscriber_ = create_subscription<PathChangeModule>( \n", + "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp bind 106 \"~/input/force_approval\", 1, std::bind(&BehaviorPathPlannerNode::onForceApproval, this, _1), \n", + "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp create_subscription 111 vector_map_subscriber_ = create_subscription<HADMapBin>( \n", + "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp bind 112 \"~/input/vector_map\", qos_transient_local, std::bind(&BehaviorPathPlannerNode::onMap, this, _1), \n", + "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp create_subscription 114 route_subscriber_ = create_subscription<HADMapRoute>( \n", + "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp bind 115 \"~/input/route\", qos_transient_local, std::bind(&BehaviorPathPlannerNode::onRoute, this, _1), \n", + "/universe/autoware.universe/system/ad_service_state_monitor/src/ad_service_state_monitor_node/ad_service_state_monitor_node.cpp create_subscription 430 sub_autoware_engage_ = this->create_subscription<autoware_auto_vehicle_msgs::msg::Engage>( \n", + "/universe/autoware.universe/system/ad_service_state_monitor/src/ad_service_state_monitor_node/ad_service_state_monitor_node.cpp bind 431 \"input/autoware_engage\", 1, std::bind(&AutowareStateMonitorNode::onAutowareEngage, this, _1), \n", + "/universe/autoware.universe/system/ad_service_state_monitor/src/ad_service_state_monitor_node/ad_service_state_monitor_node.cpp create_subscription 433 sub_control_mode_ = this->create_subscription<autoware_auto_vehicle_msgs::msg::ControlModeReport>( \n", + "/universe/autoware.universe/system/ad_service_state_monitor/src/ad_service_state_monitor_node/ad_service_state_monitor_node.cpp bind 434 \"input/control_mode\", 1, std::bind(&AutowareStateMonitorNode::onVehicleControlMode, this, _1), \n", + "/universe/autoware.universe/system/ad_service_state_monitor/src/ad_service_state_monitor_node/ad_service_state_monitor_node.cpp create_subscription 436 sub_route_ = this->create_subscription<autoware_auto_planning_msgs::msg::HADMapRoute>( \n", + "/universe/autoware.universe/system/ad_service_state_monitor/src/ad_service_state_monitor_node/ad_service_state_monitor_node.cpp bind 438 std::bind(&AutowareStateMonitorNode::onRoute, this, _1), subscriber_option); \n", + "/universe/autoware.universe/system/ad_service_state_monitor/src/ad_service_state_monitor_node/ad_service_state_monitor_node.cpp create_subscription 439 sub_odom_ = this->create_subscription<nav_msgs::msg::Odometry>( \n", + "/universe/autoware.universe/system/ad_service_state_monitor/src/ad_service_state_monitor_node/ad_service_state_monitor_node.cpp bind 440 \"input/odometry\", 100, std::bind(&AutowareStateMonitorNode::onOdometry, this, _1), \n", + "/universe/autoware.universe/localization/pose2twist/src/pose2twist_core.cpp create_subscription 39 pose_sub_ = create_subscription<geometry_msgs::msg::PoseStamped>( \n", + "/universe/autoware.universe/localization/pose2twist/src/pose2twist_core.cpp bind 40 \"pose\", queue_size, std::bind(&Pose2Twist::callbackPose, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/cpu_usage.cpp create_subscription 25 sub_cpu_usage_ = create_subscription<tier4_external_api_msgs::msg::CpuUsage>( \n", + "[WARN] Could not find matching bind statement for /universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/cpu_usage.cpp#create_subscription@25\n", + "/universe/autoware.universe/system/system_monitor/test/src/mem_monitor/test_mem_monitor.cpp create_subscription 99 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", + "/universe/autoware.universe/system/system_monitor/test/src/mem_monitor/test_mem_monitor.cpp bind 100 \"/diagnostics\", 1000, std::bind(&TestMemMonitor::diagCallback, monitor_.get(), _1)); \n", + "/universe/autoware.universe/common/fake_test_node/include/fake_test_node/fake_test_node.hpp create_subscription 140 typename rclcpp::Subscription<MsgT>::SharedPtr create_subscription( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/common/fake_test_node/include/fake_test_node/fake_test_node.hpp#create_subscription@140\n", + "/universe/autoware.universe/common/fake_test_node/include/fake_test_node/fake_test_node.hpp create_subscription 146 auto subscription = m_fake_node->create_subscription<MsgT>(topic, qos, callback); \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/common/fake_test_node/include/fake_test_node/fake_test_node.hpp#create_subscription@146\n", + "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/vector_map_filter/lanelet2_map_filter_nodelet.cpp create_subscription 53 map_sub_ = this->create_subscription<autoware_auto_mapping_msgs::msg::HADMapBin>( \n", + "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/vector_map_filter/lanelet2_map_filter_nodelet.cpp bind 55 std::bind(&Lanelet2MapFilterComponent::mapCallback, this, _1)); \n", + "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/vector_map_filter/lanelet2_map_filter_nodelet.cpp create_subscription 56 pointcloud_sub_ = this->create_subscription<PointCloud2>( \n", + "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/vector_map_filter/lanelet2_map_filter_nodelet.cpp bind 58 std::bind(&Lanelet2MapFilterComponent::pointcloudCallback, this, _1)); \n", + "/universe/autoware.universe/common/tier4_planning_rviz_plugin/src/tools/max_velocity.cpp create_subscription 117 max_vel_sub_ = raw_node->create_subscription<tier4_planning_msgs::msg::VelocityLimit>( \n", + "/universe/autoware.universe/common/tier4_planning_rviz_plugin/src/tools/max_velocity.cpp bind 119 std::bind(&MaxVelocityDisplay::processMessage, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/system/system_monitor/test/src/gpu_monitor/test_tegra_gpu_monitor.cpp create_subscription 93 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", + "/universe/autoware.universe/system/system_monitor/test/src/gpu_monitor/test_tegra_gpu_monitor.cpp bind 94 \"/diagnostics\", 1000, std::bind(&TestGPUMonitor::diagCallback, monitor_.get(), _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/iv_msgs.cpp create_subscription 25 sub_state_ = create_subscription<AutowareStateAuto>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/iv_msgs.cpp bind 26 \"/autoware/state\", rclcpp::QoS(1), std::bind(&IVMsgs::onState, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/iv_msgs.cpp create_subscription 27 sub_emergency_ = create_subscription<EmergencyStateAuto>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/iv_msgs.cpp bind 28 \"/system/emergency/emergency_state\", rclcpp::QoS(1), std::bind(&IVMsgs::onEmergency, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/iv_msgs.cpp create_subscription 32 sub_control_mode_ = create_subscription<ControlModeAuto>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/iv_msgs.cpp bind 33 \"/vehicle/status/control_mode\", rclcpp::QoS(1), std::bind(&IVMsgs::onControlMode, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/iv_msgs.cpp create_subscription 37 sub_trajectory_ = create_subscription<TrajectoryAuto>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/iv_msgs.cpp bind 39 std::bind(&IVMsgs::onTrajectory, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/iv_msgs.cpp create_subscription 43 sub_tracked_objects_ = create_subscription<TrackedObjectsAuto>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/iv_msgs.cpp bind 45 std::bind(&IVMsgs::onTrackedObjects, this, _1)); \n", + "/universe/autoware.universe/planning/planning_error_monitor/test/src/test_planning_error_monitor_pubsub.cpp create_subscription 39 diag_sub_ = create_subscription<DiagnosticArray>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/planning_error_monitor/test/src/test_planning_error_monitor_pubsub.cpp#create_subscription@39\n", + "/universe/autoware.universe/perception/compare_map_segmentation/src/compare_elevation_map_filter_node.cpp create_subscription 49 sub_map_ = this->create_subscription<grid_map_msgs::msg::GridMap>( \n", + "/universe/autoware.universe/perception/compare_map_segmentation/src/compare_elevation_map_filter_node.cpp bind 51 std::bind( \n", + "/universe/autoware.universe/map/map_loader/src/lanelet2_map_loader/lanelet2_map_visualization_node.cpp create_subscription 75 sub_map_bin_ = this->create_subscription<autoware_auto_mapping_msgs::msg::HADMapBin>( \n", + "/universe/autoware.universe/map/map_loader/src/lanelet2_map_loader/lanelet2_map_visualization_node.cpp bind 77 std::bind(&Lanelet2MapVisualizationNode::onMapBin, this, _1)); \n", + "/universe/autoware.universe/perception/map_based_prediction/src/map_based_prediction_node.cpp create_subscription 84 sub_objects_ = this->create_subscription<TrackedObjects>( \n", + "/universe/autoware.universe/perception/map_based_prediction/src/map_based_prediction_node.cpp bind 86 std::bind(&MapBasedPredictionNode::objectsCallback, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/perception/map_based_prediction/src/map_based_prediction_node.cpp create_subscription 87 sub_map_ = this->create_subscription<HADMapBin>( \n", + "/universe/autoware.universe/perception/map_based_prediction/src/map_based_prediction_node.cpp bind 89 std::bind(&MapBasedPredictionNode::mapCallback, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/common/tier4_debug_tools/scripts/pose2tf.py create_subscription 32 self._sub_pose = self.create_subscription( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/common/tier4_debug_tools/scripts/pose2tf.py#create_subscription@32\n", + "/universe/autoware.universe/common/tier4_debug_tools/scripts/stop_reason2pose.py create_subscription 34 self._sub_pose = self.create_subscription( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/common/tier4_debug_tools/scripts/stop_reason2pose.py#create_subscription@34\n", + "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp create_subscription 52 sub_local_control_cmd_ = create_subscription<ExternalControlCommand>( \n", + "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp bind 53 \"~/input/local/control_cmd\", 1, std::bind(&ExternalCmdSelector::onLocalControlCmd, this, _1), \n", + "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp create_subscription 55 sub_local_shift_cmd_ = create_subscription<ExternalGearShift>( \n", + "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp bind 56 \"~/input/local/shift_cmd\", 1, std::bind(&ExternalCmdSelector::onLocalShiftCmd, this, _1), \n", + "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp create_subscription 58 sub_local_turn_signal_cmd_ = create_subscription<ExternalTurnSignal>( \n", + "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp bind 60 std::bind(&ExternalCmdSelector::onLocalTurnSignalCmd, this, _1), subscriber_option); \n", + "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp create_subscription 61 sub_local_heartbeat_ = create_subscription<ExternalHeartbeat>( \n", + "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp bind 62 \"~/input/local/heartbeat\", 1, std::bind(&ExternalCmdSelector::onLocalHeartbeat, this, _1), \n", + "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp create_subscription 65 sub_remote_control_cmd_ = create_subscription<ExternalControlCommand>( \n", + "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp bind 66 \"~/input/remote/control_cmd\", 1, std::bind(&ExternalCmdSelector::onRemoteControlCmd, this, _1), \n", + "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp create_subscription 68 sub_remote_shift_cmd_ = create_subscription<ExternalGearShift>( \n", + "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp bind 69 \"~/input/remote/shift_cmd\", 1, std::bind(&ExternalCmdSelector::onRemoteShiftCmd, this, _1), \n", + "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp create_subscription 71 sub_remote_turn_signal_cmd_ = create_subscription<ExternalTurnSignal>( \n", + "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp bind 73 std::bind(&ExternalCmdSelector::onRemoteTurnSignalCmd, this, _1), subscriber_option); \n", + "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp create_subscription 74 sub_remote_heartbeat_ = create_subscription<ExternalHeartbeat>( \n", + "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp bind 75 \"~/input/remote/heartbeat\", 1, std::bind(&ExternalCmdSelector::onRemoteHeartbeat, this, _1), \n", + "/universe/autoware.universe/vehicle/accel_brake_map_calibrator/accel_brake_map_calibrator/test/sim_actuation_status_publisher.py create_subscription 39 self.sub = self.create_subscription( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/vehicle/accel_brake_map_calibrator/accel_brake_map_calibrator/test/sim_actuation_status_publisher.py#create_subscription@39\n", + "/universe/autoware.universe/planning/rtc_auto_approver/src/rtc_auto_approver_interface.cpp create_subscription 26 status_sub_ = node->create_subscription<CooperateStatusArray>( \n", + "/universe/autoware.universe/planning/rtc_auto_approver/src/rtc_auto_approver_interface.cpp bind 28 std::bind(&RTCAutoApproverInterface::onStatus, this, _1)); \n", + "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_latlon_muxer_node.cpp create_subscription 54 this->create_subscription<ControlCommand>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_latlon_muxer_node.cpp#create_subscription@54\n", + "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_latlon_muxer_node.cpp create_subscription 100 this->create_subscription<ControlCommand>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_latlon_muxer_node.cpp#create_subscription@100\n", + "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_latlon_muxer_node.cpp create_subscription 136 this->create_subscription<ControlCommand>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_latlon_muxer_node.cpp#create_subscription@136\n", + "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_latlon_muxer_node.cpp create_subscription 172 this->create_subscription<ControlCommand>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_latlon_muxer_node.cpp#create_subscription@172\n", + "/universe/autoware.universe/vehicle/accel_brake_map_calibrator/accel_brake_map_calibrator/src/accel_brake_map_calibrator_node.cpp create_subscription 188 velocity_sub_ = create_subscription<autoware_auto_vehicle_msgs::msg::VelocityReport>( \n", + "/universe/autoware.universe/vehicle/accel_brake_map_calibrator/accel_brake_map_calibrator/src/accel_brake_map_calibrator_node.cpp bind 190 std::bind(&AccelBrakeMapCalibrator::callbackVelocity, this, _1)); \n", + "/universe/autoware.universe/vehicle/accel_brake_map_calibrator/accel_brake_map_calibrator/src/accel_brake_map_calibrator_node.cpp create_subscription 191 steer_sub_ = create_subscription<autoware_auto_vehicle_msgs::msg::SteeringReport>( \n", + "/universe/autoware.universe/vehicle/accel_brake_map_calibrator/accel_brake_map_calibrator/src/accel_brake_map_calibrator_node.cpp bind 192 \"~/input/steer\", queue_size, std::bind(&AccelBrakeMapCalibrator::callbackSteer, this, _1)); \n", + "/universe/autoware.universe/vehicle/accel_brake_map_calibrator/accel_brake_map_calibrator/src/accel_brake_map_calibrator_node.cpp create_subscription 193 actuation_status_sub_ = create_subscription<tier4_vehicle_msgs::msg::ActuationStatusStamped>( \n", + "/universe/autoware.universe/vehicle/accel_brake_map_calibrator/accel_brake_map_calibrator/src/accel_brake_map_calibrator_node.cpp bind 195 std::bind(&AccelBrakeMapCalibrator::callbackActuationStatus, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/route.cpp create_subscription 90 sub_planning_route_ = create_subscription<autoware_auto_planning_msgs::msg::HADMapRoute>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/route.cpp bind 92 std::bind(&Route::onRoute, this, _1)); \n", + "/universe/autoware.universe/perception/compare_map_segmentation/src/voxel_based_approximate_compare_map_filter_nodelet.cpp create_subscription 46 sub_map_ = this->create_subscription<PointCloud2>( \n", + "/universe/autoware.universe/perception/compare_map_segmentation/src/voxel_based_approximate_compare_map_filter_nodelet.cpp bind 48 std::bind(&VoxelBasedApproximateCompareMapFilterComponent::input_target_callback, this, _1)); \n", + "/universe/external/grid_map/grid_map_demos/src/FiltersDemo.cpp create_subscription 26 subscriber_ = this->create_subscription<grid_map_msgs::msg::GridMap>( \n", + "/universe/external/grid_map/grid_map_demos/src/FiltersDemo.cpp bind 28 std::bind(&FiltersDemo::callback, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp create_subscription 78 this->create_subscription<LongitudinalCommand>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp#create_subscription@78\n", + "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp create_subscription 150 this->create_subscription<LongitudinalCommand>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp#create_subscription@150\n", + "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp create_subscription 222 this->create_subscription<LongitudinalCommand>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp#create_subscription@222\n", + "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp create_subscription 294 this->create_subscription<LongitudinalCommand>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp#create_subscription@294\n", + "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp create_subscription 358 this->create_subscription<LongitudinalCommand>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp#create_subscription@358\n", + "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp create_subscription 422 this->create_subscription<LongitudinalCommand>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp#create_subscription@422\n", + "/universe/autoware.universe/localization/ekf_localizer/src/ekf_localizer.cpp create_subscription 93 sub_initialpose_ = create_subscription<geometry_msgs::msg::PoseWithCovarianceStamped>( \n", + "/universe/autoware.universe/localization/ekf_localizer/src/ekf_localizer.cpp bind 94 \"initialpose\", 1, std::bind(&EKFLocalizer::callbackInitialPose, this, _1)); \n", + "/universe/autoware.universe/localization/ekf_localizer/src/ekf_localizer.cpp create_subscription 95 sub_pose_with_cov_ = create_subscription<geometry_msgs::msg::PoseWithCovarianceStamped>( \n", + "/universe/autoware.universe/localization/ekf_localizer/src/ekf_localizer.cpp bind 96 \"in_pose_with_covariance\", 1, std::bind(&EKFLocalizer::callbackPoseWithCovariance, this, _1)); \n", + "/universe/autoware.universe/localization/ekf_localizer/src/ekf_localizer.cpp create_subscription 97 sub_twist_with_cov_ = create_subscription<geometry_msgs::msg::TwistWithCovarianceStamped>( \n", + "/universe/autoware.universe/localization/ekf_localizer/src/ekf_localizer.cpp bind 98 \"in_twist_with_covariance\", 1, std::bind(&EKFLocalizer::callbackTwistWithCovariance, this, _1)); \n", + "/universe/autoware.universe/planning/obstacle_cruise_planner/scripts/trajectory_visualizer.py create_subscription 68 self.sub_localization_twist = self.create_subscription( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/obstacle_cruise_planner/scripts/trajectory_visualizer.py#create_subscription@68\n", + "/universe/autoware.universe/planning/obstacle_cruise_planner/scripts/trajectory_visualizer.py create_subscription 71 self.sub_vehicle_twist = self.create_subscription( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/obstacle_cruise_planner/scripts/trajectory_visualizer.py#create_subscription@71\n", + "/universe/autoware.universe/common/tier4_traffic_light_rviz_plugin/src/traffic_light_publish_panel.cpp create_subscription 223 sub_vector_map_ = raw_node_->create_subscription<HADMapBin>( \n", + "/universe/autoware.universe/common/tier4_traffic_light_rviz_plugin/src/traffic_light_publish_panel.cpp bind 225 std::bind(&TrafficLightPublishPanel::onVectorMap, this, _1)); \n", + "/universe/autoware.universe/planning/mission_planner/src/mission_planner_lanelet2/mission_planner_lanelet2.cpp create_subscription 132 map_subscriber_ = create_subscription<autoware_auto_mapping_msgs::msg::HADMapBin>( \n", + "/universe/autoware.universe/planning/mission_planner/src/mission_planner_lanelet2/mission_planner_lanelet2.cpp bind 134 std::bind(&MissionPlannerLanelet2::mapCallback, this, _1)); \n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/scene_module/run_out/dynamic_obstacle.cpp create_subscription 151 sub_compare_map_filtered_pointcloud_ = node.create_subscription<sensor_msgs::msg::PointCloud2>( \n", + "/universe/autoware.universe/planning/behavior_velocity_planner/src/scene_module/run_out/dynamic_obstacle.cpp bind 153 std::bind(&DynamicObstacleCreatorForPoints::onCompareMapFilteredPointCloud, this, _1)); \n", + "/universe/autoware.universe/sensing/image_transport_decompressor/src/image_transport_decompressor.cpp create_subscription 69 compressed_image_sub_ = create_subscription<sensor_msgs::msg::CompressedImage>( \n", + "/universe/autoware.universe/sensing/image_transport_decompressor/src/image_transport_decompressor.cpp bind 71 std::bind(&ImageTransportDecompressor::onCompressedImage, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/planning/freespace_planner/src/freespace_planner/freespace_planner_node.cpp create_subscription 234 route_sub_ = create_subscription<HADMapRoute>( \n", + "/universe/autoware.universe/planning/freespace_planner/src/freespace_planner/freespace_planner_node.cpp bind 236 std::bind(&FreespacePlannerNode::onRoute, this, _1)); \n", + "/universe/autoware.universe/planning/freespace_planner/src/freespace_planner/freespace_planner_node.cpp create_subscription 237 occupancy_grid_sub_ = create_subscription<OccupancyGrid>( \n", + "/universe/autoware.universe/planning/freespace_planner/src/freespace_planner/freespace_planner_node.cpp bind 238 \"~/input/occupancy_grid\", 1, std::bind(&FreespacePlannerNode::onOccupancyGrid, this, _1)); \n", + "/universe/autoware.universe/planning/freespace_planner/src/freespace_planner/freespace_planner_node.cpp create_subscription 239 scenario_sub_ = create_subscription<Scenario>( \n", + "/universe/autoware.universe/planning/freespace_planner/src/freespace_planner/freespace_planner_node.cpp bind 240 \"~/input/scenario\", 1, std::bind(&FreespacePlannerNode::onScenario, this, _1)); \n", + "/universe/autoware.universe/planning/freespace_planner/src/freespace_planner/freespace_planner_node.cpp create_subscription 241 odom_sub_ = create_subscription<Odometry>( \n", + "/universe/autoware.universe/planning/freespace_planner/src/freespace_planner/freespace_planner_node.cpp bind 242 \"~/input/odometry\", 100, std::bind(&FreespacePlannerNode::onOdometry, this, _1)); \n", + "/universe/autoware.universe/planning/scenario_selector/src/scenario_selector_node/scenario_selector_node.cpp create_subscription 328 this->create_subscription<autoware_auto_planning_msgs::msg::Trajectory>( \n", + "/universe/autoware.universe/planning/scenario_selector/src/scenario_selector_node/scenario_selector_node.cpp bind 330 std::bind(&ScenarioSelectorNode::onLaneDrivingTrajectory, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/planning/scenario_selector/src/scenario_selector_node/scenario_selector_node.cpp create_subscription 332 sub_parking_trajectory_ = this->create_subscription<autoware_auto_planning_msgs::msg::Trajectory>( \n", + "/universe/autoware.universe/planning/scenario_selector/src/scenario_selector_node/scenario_selector_node.cpp bind 334 std::bind(&ScenarioSelectorNode::onParkingTrajectory, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/planning/scenario_selector/src/scenario_selector_node/scenario_selector_node.cpp create_subscription 336 sub_lanelet_map_ = this->create_subscription<autoware_auto_mapping_msgs::msg::HADMapBin>( \n", + "/universe/autoware.universe/planning/scenario_selector/src/scenario_selector_node/scenario_selector_node.cpp bind 338 std::bind(&ScenarioSelectorNode::onMap, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/planning/scenario_selector/src/scenario_selector_node/scenario_selector_node.cpp create_subscription 339 sub_route_ = this->create_subscription<autoware_auto_planning_msgs::msg::HADMapRoute>( \n", + "/universe/autoware.universe/planning/scenario_selector/src/scenario_selector_node/scenario_selector_node.cpp bind 341 std::bind(&ScenarioSelectorNode::onRoute, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/planning/scenario_selector/src/scenario_selector_node/scenario_selector_node.cpp create_subscription 342 sub_odom_ = this->create_subscription<nav_msgs::msg::Odometry>( \n", + "/universe/autoware.universe/planning/scenario_selector/src/scenario_selector_node/scenario_selector_node.cpp bind 344 std::bind(&ScenarioSelectorNode::onOdom, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/perception/compare_map_segmentation/src/voxel_based_compare_map_filter_nodelet.cpp create_subscription 45 sub_map_ = this->create_subscription<PointCloud2>( \n", + "/universe/autoware.universe/perception/compare_map_segmentation/src/voxel_based_compare_map_filter_nodelet.cpp bind 47 std::bind(&VoxelBasedCompareMapFilterComponent::input_target_callback, this, _1)); \n", + "/universe/autoware.universe/common/fake_test_node/design/fake_test_node-design.md create_subscription 45 auto result_odom_subscription = create_subscription<Bool>(\"/output_topic\", *node, \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/common/fake_test_node/design/fake_test_node-design.md#create_subscription@45\n", + "/universe/autoware.universe/perception/traffic_light_map_based_detector/src/node.cpp create_subscription 98 map_sub_ = create_subscription<autoware_auto_mapping_msgs::msg::HADMapBin>( \n", + "/universe/autoware.universe/perception/traffic_light_map_based_detector/src/node.cpp bind 100 std::bind(&MapBasedDetector::mapCallback, this, _1)); \n", + "/universe/autoware.universe/perception/traffic_light_map_based_detector/src/node.cpp create_subscription 101 camera_info_sub_ = create_subscription<sensor_msgs::msg::CameraInfo>( \n", + "/universe/autoware.universe/perception/traffic_light_map_based_detector/src/node.cpp bind 103 std::bind(&MapBasedDetector::cameraInfoCallback, this, _1)); \n", + "/universe/autoware.universe/perception/traffic_light_map_based_detector/src/node.cpp create_subscription 104 route_sub_ = create_subscription<autoware_auto_planning_msgs::msg::HADMapRoute>( \n", + "/universe/autoware.universe/perception/traffic_light_map_based_detector/src/node.cpp bind 106 std::bind(&MapBasedDetector::routeCallback, this, _1)); \n", + "/universe/autoware.universe/perception/object_range_splitter/src/node.cpp create_subscription 23 sub_ = this->create_subscription<autoware_auto_perception_msgs::msg::DetectedObjects>( \n", + "/universe/autoware.universe/perception/object_range_splitter/src/node.cpp bind 24 \"input/object\", rclcpp::QoS{1}, std::bind(&ObjectRangeSplitterNode::objectCallback, this, _1)); \n", + "/universe/autoware.universe/planning/costmap_generator/nodes/costmap_generator/costmap_generator_node.cpp create_subscription 197 sub_objects_ = this->create_subscription<autoware_auto_perception_msgs::msg::PredictedObjects>( \n", + "/universe/autoware.universe/planning/costmap_generator/nodes/costmap_generator/costmap_generator_node.cpp bind 198 \"~/input/objects\", 1, std::bind(&CostmapGenerator::onObjects, this, _1)); \n", + "/universe/autoware.universe/planning/costmap_generator/nodes/costmap_generator/costmap_generator_node.cpp create_subscription 199 sub_points_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", + "/universe/autoware.universe/planning/costmap_generator/nodes/costmap_generator/costmap_generator_node.cpp bind 201 std::bind(&CostmapGenerator::onPoints, this, _1)); \n", + "/universe/autoware.universe/planning/costmap_generator/nodes/costmap_generator/costmap_generator_node.cpp create_subscription 202 sub_lanelet_bin_map_ = this->create_subscription<autoware_auto_mapping_msgs::msg::HADMapBin>( \n", + "/universe/autoware.universe/planning/costmap_generator/nodes/costmap_generator/costmap_generator_node.cpp bind 204 std::bind(&CostmapGenerator::onLaneletMapBin, this, _1)); \n", + "/universe/autoware.universe/planning/costmap_generator/nodes/costmap_generator/costmap_generator_node.cpp create_subscription 205 sub_scenario_ = this->create_subscription<tier4_planning_msgs::msg::Scenario>( \n", + "/universe/autoware.universe/planning/costmap_generator/nodes/costmap_generator/costmap_generator_node.cpp bind 206 \"~/input/scenario\", 1, std::bind(&CostmapGenerator::onScenario, this, _1)); \n", + "/universe/autoware.universe/vehicle/raw_vehicle_cmd_converter/src/node.cpp create_subscription 86 sub_control_cmd_ = create_subscription<AckermannControlCommand>( \n", + "/universe/autoware.universe/vehicle/raw_vehicle_cmd_converter/src/node.cpp bind 87 \"~/input/control_cmd\", 1, std::bind(&RawVehicleCommandConverterNode::onControlCmd, this, _1)); \n", + "/universe/autoware.universe/vehicle/raw_vehicle_cmd_converter/src/node.cpp create_subscription 88 sub_velocity_ = create_subscription<Odometry>( \n", + "/universe/autoware.universe/vehicle/raw_vehicle_cmd_converter/src/node.cpp bind 89 \"~/input/odometry\", 1, std::bind(&RawVehicleCommandConverterNode::onVelocity, this, _1)); \n", + "/universe/autoware.universe/vehicle/raw_vehicle_cmd_converter/src/node.cpp create_subscription 90 sub_steering_ = create_subscription<Steering>( \n", + "/universe/autoware.universe/vehicle/raw_vehicle_cmd_converter/src/node.cpp bind 91 \"~/input/steering\", 1, std::bind(&RawVehicleCommandConverterNode::onSteering, this, _1)); \n", + "/sensor_component/external/velodyne_vls/velodyne_pointcloud/src/conversions/convert.cc create_subscription 150 this->create_subscription<velodyne_msgs::msg::VelodyneScan>( \n", + "/sensor_component/external/velodyne_vls/velodyne_pointcloud/src/conversions/convert.cc bind 152 std::bind(&Convert::processScan, this, std::placeholders::_1)); \n", + "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp create_subscription 68 control_cmd_sub_ = create_subscription<autoware_auto_control_msgs::msg::AckermannControlCommand>( \n", + "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp bind 69 \"/control/command/control_cmd\", 1, std::bind(&PacmodInterface::callbackControlCmd, this, _1)); \n", + "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp create_subscription 70 gear_cmd_sub_ = create_subscription<autoware_auto_vehicle_msgs::msg::GearCommand>( \n", + "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp bind 71 \"/control/command/gear_cmd\", 1, std::bind(&PacmodInterface::callbackGearCmd, this, _1)); \n", + "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp create_subscription 73 create_subscription<autoware_auto_vehicle_msgs::msg::TurnIndicatorsCommand>( \n", + "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp bind 75 std::bind(&PacmodInterface::callbackTurnIndicatorsCommand, this, _1)); \n", + "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp create_subscription 77 create_subscription<autoware_auto_vehicle_msgs::msg::HazardLightsCommand>( \n", + "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp bind 79 std::bind(&PacmodInterface::callbackHazardLightsCommand, this, _1)); \n", + "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp create_subscription 80 engage_cmd_sub_ = create_subscription<autoware_auto_vehicle_msgs::msg::Engage>( \n", + "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp bind 81 \"/vehicle/engage\", rclcpp::QoS{1}, std::bind(&PacmodInterface::callbackEngage, this, _1)); \n", + "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp create_subscription 82 actuation_cmd_sub_ = create_subscription<ActuationCommandStamped>( \n", + "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp bind 84 std::bind(&PacmodInterface::callbackActuationCmd, this, _1)); \n", + "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp create_subscription 85 emergency_sub_ = create_subscription<tier4_vehicle_msgs::msg::VehicleEmergencyStamped>( \n", + "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp bind 87 std::bind(&PacmodInterface::callbackEmergencyCmd, this, _1)); \n", + "/universe/autoware.universe/planning/planning_evaluator/src/planning_evaluator_node.cpp create_subscription 33 traj_sub_ = create_subscription<Trajectory>( \n", + "/universe/autoware.universe/planning/planning_evaluator/src/planning_evaluator_node.cpp bind 34 \"~/input/trajectory\", 1, std::bind(&PlanningEvaluatorNode::onTrajectory, this, _1)); \n", + "/universe/autoware.universe/planning/planning_evaluator/src/planning_evaluator_node.cpp create_subscription 36 ref_sub_ = create_subscription<Trajectory>( \n", + "/universe/autoware.universe/planning/planning_evaluator/src/planning_evaluator_node.cpp bind 38 std::bind(&PlanningEvaluatorNode::onReferenceTrajectory, this, _1)); \n", + "/universe/autoware.universe/planning/planning_evaluator/src/planning_evaluator_node.cpp create_subscription 40 objects_sub_ = create_subscription<PredictedObjects>( \n", + "/universe/autoware.universe/planning/planning_evaluator/src/planning_evaluator_node.cpp bind 41 \"~/input/objects\", 1, std::bind(&PlanningEvaluatorNode::onObjects, this, _1)); \n", + "/sensor_component/external/tamagawa_imu_driver/src/tag_serial_driver.cpp create_subscription 145 rclcpp::Subscription<std_msgs::msg::Int32>::SharedPtr sub1 = node->create_subscription<std_msgs::msg::Int32>(\"receive_ver_req\", 10, receive_ver_req);\n", + "[WARN] Could not find matching bind statement for /sensor_component/external/tamagawa_imu_driver/src/tag_serial_driver.cpp#create_subscription@145\n", + "/sensor_component/external/tamagawa_imu_driver/src/tag_serial_driver.cpp create_subscription 146 rclcpp::Subscription<std_msgs::msg::Int32>::SharedPtr sub2 = node->create_subscription<std_msgs::msg::Int32>(\"receive_offset_cancel_req\", 10, receive_offset_cancel_req);\n", + "[WARN] Could not find matching bind statement for /sensor_component/external/tamagawa_imu_driver/src/tag_serial_driver.cpp#create_subscription@146\n", + "/sensor_component/external/tamagawa_imu_driver/src/tag_serial_driver.cpp create_subscription 147 rclcpp::Subscription<std_msgs::msg::Int32>::SharedPtr sub3 = node->create_subscription<std_msgs::msg::Int32>(\"receive_heading_reset_req\", 10, receive_heading_reset_req);\n", + "[WARN] Could not find matching bind statement for /sensor_component/external/tamagawa_imu_driver/src/tag_serial_driver.cpp#create_subscription@147\n", + "/universe/autoware.universe/perception/compare_map_segmentation/src/voxel_distance_based_compare_map_filter_nodelet.cpp create_subscription 33 sub_map_ = this->create_subscription<PointCloud2>( \n", + "/universe/autoware.universe/perception/compare_map_segmentation/src/voxel_distance_based_compare_map_filter_nodelet.cpp bind 35 std::bind(&VoxelDistanceBasedCompareMapFilterComponent::input_target_callback, this, _1)); \n", + "/universe/autoware.universe/control/pure_pursuit/src/pure_pursuit/pure_pursuit_node.cpp create_subscription 76 sub_trajectory_ = this->create_subscription<autoware_auto_planning_msgs::msg::Trajectory>( \n", + "/universe/autoware.universe/control/pure_pursuit/src/pure_pursuit/pure_pursuit_node.cpp bind 77 \"input/reference_trajectory\", 1, std::bind(&PurePursuitNode::onTrajectory, this, _1)); \n", + "/universe/autoware.universe/control/pure_pursuit/src/pure_pursuit/pure_pursuit_node.cpp create_subscription 78 sub_current_odometry_ = this->create_subscription<nav_msgs::msg::Odometry>( \n", + "/universe/autoware.universe/control/pure_pursuit/src/pure_pursuit/pure_pursuit_node.cpp bind 79 \"input/current_odometry\", 1, std::bind(&PurePursuitNode::onCurrentOdometry, this, _1)); \n", + "/universe/autoware.universe/sensing/imu_corrector/src/imu_corrector_core.cpp create_subscription 29 imu_sub_ = create_subscription<sensor_msgs::msg::Imu>( \n", + "/universe/autoware.universe/sensing/imu_corrector/src/imu_corrector_core.cpp bind 30 \"input\", rclcpp::QoS{1}, std::bind(&ImuCorrector::callbackImu, this, std::placeholders::_1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/door.cpp create_subscription 33 sub_door_status_ = create_subscription<tier4_api_msgs::msg::DoorStatus>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/door.cpp bind 34 \"/vehicle/status/door_status\", rclcpp::QoS(1), std::bind(&Door::getDoorStatus, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/operator.cpp create_subscription 47 sub_external_select_ = create_subscription<tier4_control_msgs::msg::ExternalCommandSelectorMode>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/operator.cpp bind 49 std::bind(&Operator::onExternalSelect, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/operator.cpp create_subscription 50 sub_gate_mode_ = create_subscription<tier4_control_msgs::msg::GateMode>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/operator.cpp bind 51 \"/control/current_gate_mode\", rclcpp::QoS(1), std::bind(&Operator::onGateMode, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/operator.cpp create_subscription 53 create_subscription<autoware_auto_vehicle_msgs::msg::ControlModeReport>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/operator.cpp bind 55 std::bind(&Operator::onVehicleControlMode, this, _1)); \n", + "/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp create_subscription 218 initial_pose_sub_ = this->create_subscription<geometry_msgs::msg::PoseWithCovarianceStamped>( \n", + "/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp bind 220 std::bind(&NDTScanMatcher::callbackInitialPose, this, std::placeholders::_1), \n", + "/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp create_subscription 222 map_points_sub_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", + "/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp bind 224 std::bind(&NDTScanMatcher::callbackMapPoints, this, std::placeholders::_1), main_sub_opt); \n", + "/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp create_subscription 225 sensor_points_sub_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", + "/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp bind 227 std::bind(&NDTScanMatcher::callbackSensorPoints, this, std::placeholders::_1), main_sub_opt); \n", + "/universe/autoware.universe/control/shift_decider/src/shift_decider.cpp create_subscription 34 sub_control_cmd_ = create_subscription<autoware_auto_control_msgs::msg::AckermannControlCommand>( \n", + "/universe/autoware.universe/control/shift_decider/src/shift_decider.cpp bind 35 \"input/control_cmd\", queue_size, std::bind(&ShiftDecider::onControlCmd, this, _1)); \n", + "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/distortion_corrector/distortion_corrector.cpp create_subscription 44 velocity_report_sub_ = this->create_subscription<VelocityReport>( \n", + "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/distortion_corrector/distortion_corrector.cpp bind 46 std::bind(&DistortionCorrectorComponent::onVelocityReport, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/distortion_corrector/distortion_corrector.cpp create_subscription 47 input_points_sub_ = this->create_subscription<PointCloud2>( \n", + "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/distortion_corrector/distortion_corrector.cpp bind 49 std::bind(&DistortionCorrectorComponent::onPointCloud, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/common/goal_distance_calculator/src/goal_distance_calculator_node.cpp create_subscription 50 sub_route_ = create_subscription<autoware_auto_planning_msgs::msg::Route>( \n", + "/universe/autoware.universe/common/goal_distance_calculator/src/goal_distance_calculator_node.cpp bind 60 this, get_clock(), period_ns, std::bind(&GoalDistanceCalculatorNode::onTimer, this)); \n", + "/universe/autoware.universe/system/system_monitor/test/src/gpu_monitor/test_nvml_gpu_monitor.cpp create_subscription 95 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", + "/universe/autoware.universe/system/system_monitor/test/src/gpu_monitor/test_nvml_gpu_monitor.cpp bind 96 \"/diagnostics\", 1000, std::bind(&TestGPUMonitor::diagCallback, monitor_.get(), _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp create_subscription 82 sub_velocity_ = create_subscription<autoware_auto_vehicle_msgs::msg::VelocityReport>( \n", + "[WARN] Could not find matching bind statement for /universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp#create_subscription@82\n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp create_subscription 87 sub_steering_ = create_subscription<autoware_auto_vehicle_msgs::msg::SteeringReport>( \n", + "[WARN] Could not find matching bind statement for /universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp#create_subscription@87\n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp create_subscription 92 sub_turn_indicators_ = create_subscription<autoware_auto_vehicle_msgs::msg::TurnIndicatorsReport>( \n", + "[WARN] Could not find matching bind statement for /universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp#create_subscription@92\n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp create_subscription 97 sub_hazard_lights_ = create_subscription<autoware_auto_vehicle_msgs::msg::HazardLightsReport>( \n", + "[WARN] Could not find matching bind statement for /universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp#create_subscription@97\n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp create_subscription 102 sub_gear_shift_ = create_subscription<autoware_auto_vehicle_msgs::msg::GearReport>( \n", + "[WARN] Could not find matching bind statement for /universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp#create_subscription@102\n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp create_subscription 110 sub_cmd_ = create_subscription<autoware_auto_control_msgs::msg::AckermannControlCommand>( \n", + "[WARN] Could not find matching bind statement for /universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp#create_subscription@110\n", + "/universe/autoware.universe/localization/localization_error_monitor/src/node.cpp create_subscription 44 pose_with_cov_sub_ = this->create_subscription<geometry_msgs::msg::PoseWithCovarianceStamped>( \n", + "/universe/autoware.universe/localization/localization_error_monitor/src/node.cpp bind 46 std::bind(&LocalizationErrorMonitor::onPoseWithCovariance, this, std::placeholders::_1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/engage.cpp create_subscription 37 sub_engage_status_ = create_subscription<autoware_auto_vehicle_msgs::msg::Engage>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/engage.cpp bind 38 \"/api/autoware/get/engage\", rclcpp::QoS(1), std::bind(&Engage::onEngageStatus, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/engage.cpp create_subscription 39 sub_autoware_state_ = create_subscription<autoware_auto_system_msgs::msg::AutowareState>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/engage.cpp bind 40 \"/autoware/state\", rclcpp::QoS(1), std::bind(&Engage::onAutowareState, this, _1)); \n", + "/universe/autoware.universe/system/system_monitor/test/src/process_monitor/test_process_monitor.cpp create_subscription 104 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", + "/universe/autoware.universe/system/system_monitor/test/src/process_monitor/test_process_monitor.cpp bind 105 \"/diagnostics\", 1000, std::bind(&TestProcessMonitor::diagCallback, monitor_.get(), _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/calibration_status.cpp create_subscription 46 create_subscription<tier4_external_api_msgs::msg::CalibrationStatus>( \n", + "[WARN] Could not find matching bind statement for /universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/calibration_status.cpp#create_subscription@46\n", + "/sensor_component/external/velodyne_vls/velodyne_pointcloud/src/conversions/interpolate.cc create_subscription 31 velocity_report_sub_ = this->create_subscription<autoware_auto_vehicle_msgs::msg::VelocityReport>( \n", + "/sensor_component/external/velodyne_vls/velodyne_pointcloud/src/conversions/interpolate.cc bind 33 std::bind(&Interpolate::processVelocityReport, this, std::placeholders::_1)); \n", + "/sensor_component/external/velodyne_vls/velodyne_pointcloud/src/conversions/interpolate.cc create_subscription 34 velodyne_points_ex_sub_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", + "/sensor_component/external/velodyne_vls/velodyne_pointcloud/src/conversions/interpolate.cc bind 35 \"velodyne_points_ex\", rclcpp::SensorDataQoS(), std::bind(&Interpolate::processPoints,this, std::placeholders::_1));\n", + "/universe/autoware.universe/control/trajectory_follower_nodes/src/longitudinal_controller_node.cpp create_subscription 171 m_sub_current_velocity = create_subscription<nav_msgs::msg::Odometry>( \n", + "/universe/autoware.universe/control/trajectory_follower_nodes/src/longitudinal_controller_node.cpp bind 173 std::bind(&LongitudinalController::callbackCurrentVelocity, this, _1)); \n", + "/universe/autoware.universe/control/trajectory_follower_nodes/src/longitudinal_controller_node.cpp create_subscription 174 m_sub_trajectory = create_subscription<autoware_auto_planning_msgs::msg::Trajectory>( \n", + "/universe/autoware.universe/control/trajectory_follower_nodes/src/longitudinal_controller_node.cpp bind 176 std::bind(&LongitudinalController::callbackTrajectory, this, _1)); \n", + "/universe/autoware.universe/planning/planning_error_monitor/src/planning_error_monitor_node.cpp create_subscription 36 traj_sub_ = create_subscription<Trajectory>( \n", + "/universe/autoware.universe/planning/planning_error_monitor/src/planning_error_monitor_node.cpp bind 37 \"~/input/trajectory\", 1, std::bind(&PlanningErrorMonitorNode::onCurrentTrajectory, this, _1)); \n", + "/universe/autoware.universe/control/control_performance_analysis/src/control_performance_analysis_node.cpp create_subscription 59 sub_trajectory_ = create_subscription<Trajectory>( \n", + "/universe/autoware.universe/control/control_performance_analysis/src/control_performance_analysis_node.cpp bind 61 std::bind(&ControlPerformanceAnalysisNode::onTrajectory, this, _1)); \n", + "/universe/autoware.universe/control/control_performance_analysis/src/control_performance_analysis_node.cpp create_subscription 63 sub_control_cmd_ = create_subscription<AckermannControlCommand>( \n", + "/universe/autoware.universe/control/control_performance_analysis/src/control_performance_analysis_node.cpp bind 64 \"~/input/control_raw\", 1, std::bind(&ControlPerformanceAnalysisNode::onControlRaw, this, _1)); \n", + "/universe/autoware.universe/control/control_performance_analysis/src/control_performance_analysis_node.cpp create_subscription 66 sub_vehicle_steering_ = create_subscription<SteeringReport>( \n", + "/universe/autoware.universe/control/control_performance_analysis/src/control_performance_analysis_node.cpp bind 68 std::bind(&ControlPerformanceAnalysisNode::onVecSteeringMeasured, this, _1)); \n", + "/universe/autoware.universe/control/control_performance_analysis/src/control_performance_analysis_node.cpp create_subscription 70 sub_velocity_ = create_subscription<Odometry>( \n", + "/universe/autoware.universe/control/control_performance_analysis/src/control_performance_analysis_node.cpp bind 71 \"~/input/odometry\", 1, std::bind(&ControlPerformanceAnalysisNode::onVelocity, this, _1)); \n", + "/universe/autoware.universe/system/system_monitor/test/src/cpu_monitor/test_unknown_cpu_monitor.cpp create_subscription 61 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", + "/universe/autoware.universe/system/system_monitor/test/src/cpu_monitor/test_unknown_cpu_monitor.cpp bind 62 \"/diagnostics\", 1000, std::bind(&TestCPUMonitor::diagCallback, monitor_.get(), _1)); \n", + "/universe/autoware.universe/sensing/image_diagnostics/src/image_diagnostics_node.cpp create_subscription 24 image_sub_ = create_subscription<sensor_msgs::msg::Image>( \n", + "/universe/autoware.universe/sensing/image_diagnostics/src/image_diagnostics_node.cpp bind 26 std::bind(&ImageDiagNode::ImageChecker, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/common/tier4_debug_tools/src/lateral_error_publisher.cpp create_subscription 28 sub_trajectory_ = create_subscription<autoware_auto_planning_msgs::msg::Trajectory>( \n", + "/universe/autoware.universe/common/tier4_debug_tools/src/lateral_error_publisher.cpp bind 30 std::bind(&LateralErrorPublisher::onTrajectory, this, _1)); \n", + "/universe/autoware.universe/common/tier4_debug_tools/src/lateral_error_publisher.cpp create_subscription 31 sub_vehicle_pose_ = create_subscription<geometry_msgs::msg::PoseWithCovarianceStamped>( \n", + "/universe/autoware.universe/common/tier4_debug_tools/src/lateral_error_publisher.cpp bind 33 std::bind(&LateralErrorPublisher::onVehiclePose, this, _1)); \n", + "/universe/autoware.universe/common/tier4_debug_tools/src/lateral_error_publisher.cpp create_subscription 34 sub_ground_truth_pose_ = create_subscription<geometry_msgs::msg::PoseWithCovarianceStamped>( \n", + "/universe/autoware.universe/common/tier4_debug_tools/src/lateral_error_publisher.cpp bind 36 std::bind(&LateralErrorPublisher::onGroundTruthPose, this, _1)); \n", + "/universe/autoware.universe/planning/surround_obstacle_checker/src/node.cpp create_subscription 170 sub_pointcloud_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", + "/universe/autoware.universe/planning/surround_obstacle_checker/src/node.cpp bind 172 std::bind(&SurroundObstacleCheckerNode::onPointCloud, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/planning/surround_obstacle_checker/src/node.cpp create_subscription 173 sub_dynamic_objects_ = this->create_subscription<PredictedObjects>( \n", + "/universe/autoware.universe/planning/surround_obstacle_checker/src/node.cpp bind 175 std::bind(&SurroundObstacleCheckerNode::onDynamicObjects, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/planning/surround_obstacle_checker/src/node.cpp create_subscription 176 sub_odometry_ = this->create_subscription<nav_msgs::msg::Odometry>( \n", + "/universe/autoware.universe/planning/surround_obstacle_checker/src/node.cpp bind 178 std::bind(&SurroundObstacleCheckerNode::onOdometry, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/planning/external_velocity_limit_selector/src/external_velocity_limit_selector_node.cpp create_subscription 75 sub_external_velocity_limit_from_api_ = this->create_subscription<VelocityLimit>( \n", + "/universe/autoware.universe/planning/external_velocity_limit_selector/src/external_velocity_limit_selector_node.cpp bind 77 std::bind(&ExternalVelocityLimitSelectorNode::onVelocityLimitFromAPI, this, _1)); \n", + "/universe/autoware.universe/planning/external_velocity_limit_selector/src/external_velocity_limit_selector_node.cpp create_subscription 79 sub_external_velocity_limit_from_internal_ = this->create_subscription<VelocityLimit>( \n", + "/universe/autoware.universe/planning/external_velocity_limit_selector/src/external_velocity_limit_selector_node.cpp bind 81 std::bind(&ExternalVelocityLimitSelectorNode::onVelocityLimitFromInternal, this, _1)); \n", + "/universe/autoware.universe/planning/external_velocity_limit_selector/src/external_velocity_limit_selector_node.cpp create_subscription 83 sub_velocity_limit_clear_command_ = this->create_subscription<VelocityLimitClearCommand>( \n", + "/universe/autoware.universe/planning/external_velocity_limit_selector/src/external_velocity_limit_selector_node.cpp bind 85 std::bind(&ExternalVelocityLimitSelectorNode::onVelocityLimitClearCommand, this, _1)); \n", + "/universe/autoware.universe/system/system_monitor/test/src/cpu_monitor/test_intel_cpu_monitor.cpp create_subscription 115 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", + "/universe/autoware.universe/system/system_monitor/test/src/cpu_monitor/test_intel_cpu_monitor.cpp bind 116 \"/diagnostics\", 1000, std::bind(&TestCPUMonitor::diagCallback, monitor_.get(), _1)); \n", + "/universe/autoware.universe/system/system_monitor/test/src/net_monitor/test_net_monitor.cpp create_subscription 90 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", + "/universe/autoware.universe/system/system_monitor/test/src/net_monitor/test_net_monitor.cpp bind 91 \"/diagnostics\", 1000, std::bind(&TestNetMonitor::diagCallback, monitor_.get(), _1)); \n", + "/universe/autoware.universe/planning/obstacle_cruise_planner/src/node.cpp create_subscription 180 trajectory_sub_ = create_subscription<Trajectory>( \n", + "/universe/autoware.universe/planning/obstacle_cruise_planner/src/node.cpp bind 182 std::bind(&ObstacleCruisePlannerNode::onTrajectory, this, _1)); \n", + "/universe/autoware.universe/planning/obstacle_cruise_planner/src/node.cpp create_subscription 183 smoothed_trajectory_sub_ = create_subscription<Trajectory>( \n", + "/universe/autoware.universe/planning/obstacle_cruise_planner/src/node.cpp bind 185 std::bind(&ObstacleCruisePlannerNode::onSmoothedTrajectory, this, _1)); \n", + "/universe/autoware.universe/planning/obstacle_cruise_planner/src/node.cpp create_subscription 186 objects_sub_ = create_subscription<PredictedObjects>( \n", + "/universe/autoware.universe/planning/obstacle_cruise_planner/src/node.cpp bind 187 \"~/input/objects\", rclcpp::QoS{1}, std::bind(&ObstacleCruisePlannerNode::onObjects, this, _1)); \n", + "/universe/autoware.universe/planning/obstacle_cruise_planner/src/node.cpp create_subscription 188 odom_sub_ = create_subscription<Odometry>( \n", + "/universe/autoware.universe/planning/obstacle_cruise_planner/src/node.cpp bind 190 std::bind(&ObstacleCruisePlannerNode::onOdometry, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/vehicle/external_cmd_converter/src/node.cpp create_subscription 31 sub_velocity_ = create_subscription<Odometry>( \n", + "/universe/autoware.universe/vehicle/external_cmd_converter/src/node.cpp bind 32 \"in/odometry\", 1, std::bind(&ExternalCmdConverterNode::onVelocity, this, _1)); \n", + "/universe/autoware.universe/vehicle/external_cmd_converter/src/node.cpp create_subscription 33 sub_control_cmd_ = create_subscription<ExternalControlCommand>( \n", + "/universe/autoware.universe/vehicle/external_cmd_converter/src/node.cpp bind 34 \"in/external_control_cmd\", 1, std::bind(&ExternalCmdConverterNode::onExternalCmd, this, _1)); \n", + "/universe/autoware.universe/vehicle/external_cmd_converter/src/node.cpp create_subscription 35 sub_shift_cmd_ = create_subscription<GearCommand>( \n", + "/universe/autoware.universe/vehicle/external_cmd_converter/src/node.cpp bind 36 \"in/shift_cmd\", 1, std::bind(&ExternalCmdConverterNode::onGearCommand, this, _1)); \n", + "/universe/autoware.universe/vehicle/external_cmd_converter/src/node.cpp create_subscription 37 sub_gate_mode_ = create_subscription<tier4_control_msgs::msg::GateMode>( \n", + "/universe/autoware.universe/vehicle/external_cmd_converter/src/node.cpp bind 38 \"in/current_gate_mode\", 1, std::bind(&ExternalCmdConverterNode::onGateMode, this, _1)); \n", + "/universe/autoware.universe/vehicle/external_cmd_converter/src/node.cpp create_subscription 39 sub_emergency_stop_heartbeat_ = create_subscription<tier4_external_api_msgs::msg::Heartbeat>( \n", + "/universe/autoware.universe/vehicle/external_cmd_converter/src/node.cpp bind 41 std::bind(&ExternalCmdConverterNode::onEmergencyStopHeartbeat, this, _1)); \n", + "/universe/autoware.universe/perception/lidar_centerpoint/src/node.cpp create_subscription 86 pointcloud_sub_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", + "/universe/autoware.universe/perception/lidar_centerpoint/src/node.cpp bind 88 std::bind(&LidarCenterPointNode::pointCloudCallback, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/common/tier4_control_rviz_plugin/src/tools/manual_controller.cpp create_subscription 164 sub_gate_mode_ = raw_node_->create_subscription<GateMode>( \n", + "/universe/autoware.universe/common/tier4_control_rviz_plugin/src/tools/manual_controller.cpp bind 165 \"/control/current_gate_mode\", 10, std::bind(&ManualController::onGateMode, this, _1)); \n", + "/universe/autoware.universe/common/tier4_control_rviz_plugin/src/tools/manual_controller.cpp create_subscription 167 sub_velocity_ = raw_node_->create_subscription<VelocityReport>( \n", + "/universe/autoware.universe/common/tier4_control_rviz_plugin/src/tools/manual_controller.cpp bind 168 \"/vehicle/status/velocity_status\", 1, std::bind(&ManualController::onVelocity, this, _1)); \n", + "/universe/autoware.universe/common/tier4_control_rviz_plugin/src/tools/manual_controller.cpp create_subscription 170 sub_engage_ = raw_node_->create_subscription<Engage>( \n", + "/universe/autoware.universe/common/tier4_control_rviz_plugin/src/tools/manual_controller.cpp bind 171 \"/api/autoware/get/engage\", 10, std::bind(&ManualController::onEngageStatus, this, _1)); \n", + "/universe/autoware.universe/common/tier4_control_rviz_plugin/src/tools/manual_controller.cpp create_subscription 173 sub_gear_ = raw_node_->create_subscription<GearReport>( \n", + "/universe/autoware.universe/common/tier4_control_rviz_plugin/src/tools/manual_controller.cpp bind 174 \"/vehicle/status/gear_status\", 10, std::bind(&ManualController::onGear, this, _1)); \n", + "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp create_subscription 80 this->create_subscription<LateralCommand>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp#create_subscription@80\n", + "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp create_subscription 110 this->create_subscription<LateralCommand>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp#create_subscription@110\n", + "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp create_subscription 162 this->create_subscription<LateralCommand>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp#create_subscription@162\n", + "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp create_subscription 234 this->create_subscription<LateralCommand>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp#create_subscription@234\n", + "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp create_subscription 306 this->create_subscription<LateralCommand>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp#create_subscription@306\n", + "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp create_subscription 378 this->create_subscription<LateralCommand>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp#create_subscription@378\n", + "/universe/autoware.universe/perception/elevation_map_loader/src/elevation_map_loader_node.cpp create_subscription 84 sub_map_hash_ = create_subscription<tier4_external_api_msgs::msg::MapHash>( \n", + "/universe/autoware.universe/perception/elevation_map_loader/src/elevation_map_loader_node.cpp bind 86 std::bind(&ElevationMapLoaderNode::onMapHash, this, _1)); \n", + "/universe/autoware.universe/perception/elevation_map_loader/src/elevation_map_loader_node.cpp create_subscription 87 sub_pointcloud_map_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", + "/universe/autoware.universe/perception/elevation_map_loader/src/elevation_map_loader_node.cpp bind 89 std::bind(&ElevationMapLoaderNode::onPointcloudMap, this, _1)); \n", + "/universe/autoware.universe/perception/elevation_map_loader/src/elevation_map_loader_node.cpp create_subscription 90 sub_vector_map_ = this->create_subscription<autoware_auto_mapping_msgs::msg::HADMapBin>( \n", + "/universe/autoware.universe/perception/elevation_map_loader/src/elevation_map_loader_node.cpp bind 91 \"input/vector_map\", durable_qos, std::bind(&ElevationMapLoaderNode::onVectorMap, this, _1)); \n", + "/universe/autoware.universe/perception/euclidean_cluster/src/euclidean_cluster_node.cpp create_subscription 33 pointcloud_sub_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", + "/universe/autoware.universe/perception/euclidean_cluster/src/euclidean_cluster_node.cpp bind 35 std::bind(&EuclideanClusterNode::onPointCloud, this, _1)); \n", + "/universe/autoware.universe/planning/planning_error_monitor/src/invalid_trajectory_publisher.cpp create_subscription 29 traj_sub_ = create_subscription<Trajectory>( \n", + "/universe/autoware.universe/planning/planning_error_monitor/src/invalid_trajectory_publisher.cpp bind 31 std::bind(&InvalidTrajectoryPublisherNode::onCurrentTrajectory, this, _1)); \n", + "/universe/autoware.universe/perception/multi_object_tracker/src/multi_object_tracker_core.cpp create_subscription 167 detected_object_sub_ = create_subscription<autoware_auto_perception_msgs::msg::DetectedObjects>( \n", + "/universe/autoware.universe/perception/multi_object_tracker/src/multi_object_tracker_core.cpp bind 169 std::bind(&MultiObjectTracker::onMeasurement, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/planning/mission_planner/src/goal_pose_visualizer/goal_pose_visualizer.cpp create_subscription 21 sub_route_ = create_subscription<autoware_auto_planning_msgs::msg::HADMapRoute>( \n", + "/universe/autoware.universe/planning/mission_planner/src/goal_pose_visualizer/goal_pose_visualizer.cpp bind 23 std::bind(&GoalPoseVisualizer::echoBackRouteCallback, this, std::placeholders::_1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/route.cpp create_subscription 42 sub_get_route_ = create_subscription<tier4_external_api_msgs::msg::Route>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/route.cpp bind 44 std::bind(&Route::onRoute, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/route.cpp create_subscription 45 sub_autoware_state_ = create_subscription<autoware_auto_system_msgs::msg::AutowareState>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/route.cpp bind 46 \"/autoware/state\", rclcpp::QoS(1), std::bind(&Route::onAutowareState, this, _1)); \n", + "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_dynamic_parameter_changer/pacmod_dynamic_parameter_changer_node.cpp create_subscription 47 steer_rpt_sub_ = create_subscription<pacmod3_msgs::msg::SystemRptFloat>( \n", + "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_dynamic_parameter_changer/pacmod_dynamic_parameter_changer_node.cpp bind 49 std::bind(&PacmodDynamicParameterChangerNode::subSteerRpt, this, _1)); \n", + "/universe/autoware.universe/simulator/simple_planning_simulator/test/test_simple_planning_simulator.cpp create_subscription 49 current_odom_sub_ = create_subscription<Odometry>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/simulator/simple_planning_simulator/test/test_simple_planning_simulator.cpp#create_subscription@49\n", + "/universe/autoware.universe/system/system_monitor/test/src/hdd_monitor/test_hdd_monitor.cpp create_subscription 131 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", + "/universe/autoware.universe/system/system_monitor/test/src/hdd_monitor/test_hdd_monitor.cpp bind 132 \"/diagnostics\", 1000, std::bind(&TestHDDMonitor::diagCallback, monitor_.get(), _1)); \n", + "/universe/autoware.universe/perception/detection_by_tracker/src/detection_by_tracker_core.cpp create_subscription 204 trackers_sub_ = create_subscription<autoware_auto_perception_msgs::msg::TrackedObjects>( \n", + "/universe/autoware.universe/perception/detection_by_tracker/src/detection_by_tracker_core.cpp bind 206 std::bind(&TrackerHandler::onTrackedObjects, &tracker_handler_, std::placeholders::_1)); \n", + "/universe/autoware.universe/perception/detection_by_tracker/src/detection_by_tracker_core.cpp create_subscription 208 create_subscription<tier4_perception_msgs::msg::DetectedObjectsWithFeature>( \n", + "/universe/autoware.universe/perception/detection_by_tracker/src/detection_by_tracker_core.cpp bind 210 std::bind(&DetectionByTracker::onObjects, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/planning/planning_evaluator/src/motion_evaluator_node.cpp create_subscription 30 twist_sub_ = create_subscription<nav_msgs::msg::Odometry>( \n", + "/universe/autoware.universe/planning/planning_evaluator/src/motion_evaluator_node.cpp bind 32 std::bind(&MotionEvaluatorNode::onOdom, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/common/component_interface_utils/include/component_interface_utils/rclcpp/create_interface.hpp create_subscription 72 auto subscription = node->template create_subscription<typename SpecT::Message>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/common/component_interface_utils/include/component_interface_utils/rclcpp/create_interface.hpp#create_subscription@72\n", + "/universe/autoware.universe/planning/mission_planner/lib/mission_planner_base.cpp create_subscription 41 goal_subscriber_ = create_subscription<geometry_msgs::msg::PoseStamped>( \n", + "/universe/autoware.universe/planning/mission_planner/lib/mission_planner_base.cpp bind 42 \"input/goal_pose\", 10, std::bind(&MissionPlanner::goalPoseCallback, this, _1)); \n", + "/universe/autoware.universe/planning/mission_planner/lib/mission_planner_base.cpp create_subscription 43 checkpoint_subscriber_ = create_subscription<geometry_msgs::msg::PoseStamped>( \n", + "/universe/autoware.universe/planning/mission_planner/lib/mission_planner_base.cpp bind 44 \"input/checkpoint\", 10, std::bind(&MissionPlanner::checkpointCallback, this, _1)); \n", + "/universe/autoware.universe/perception/image_projection_based_fusion/src/fusion_node.cpp create_subscription 61 camera_info_subs_.at(roi_i) = this->create_subscription<sensor_msgs::msg::CameraInfo>( \n", + "/universe/autoware.universe/perception/image_projection_based_fusion/src/fusion_node.cpp bind 74 std::bind(&FusionNode::dummyCallback, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/control/trajectory_follower_nodes/src/latlon_muxer_node.cpp create_subscription 34 create_subscription<autoware_auto_control_msgs::msg::AckermannLateralCommand>( \n", + "/universe/autoware.universe/control/trajectory_follower_nodes/src/latlon_muxer_node.cpp bind 36 std::bind(&LatLonMuxer::latCtrlCmdCallback, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/control/trajectory_follower_nodes/src/latlon_muxer_node.cpp create_subscription 37 m_lon_control_cmd_sub = create_subscription<autoware_auto_control_msgs::msg::LongitudinalCommand>( \n", + "/universe/autoware.universe/control/trajectory_follower_nodes/src/latlon_muxer_node.cpp bind 39 std::bind(&LatLonMuxer::lonCtrlCmdCallback, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp create_subscription 129 sub_gate_mode_ = raw_node_->create_subscription<tier4_control_msgs::msg::GateMode>( \n", + "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp bind 130 \"/control/current_gate_mode\", 10, std::bind(&AutowareStatePanel::onGateMode, this, _1)); \n", + "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp create_subscription 133 raw_node_->create_subscription<tier4_control_msgs::msg::ExternalCommandSelectorMode>( \n", + "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp bind 135 std::bind(&AutowareStatePanel::onSelectorMode, this, _1)); \n", + "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp create_subscription 138 raw_node_->create_subscription<autoware_auto_system_msgs::msg::AutowareState>( \n", + "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp bind 139 \"/autoware/state\", 10, std::bind(&AutowareStatePanel::onAutowareState, this, _1)); \n", + "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp create_subscription 141 sub_gear_ = raw_node_->create_subscription<autoware_auto_vehicle_msgs::msg::GearReport>( \n", + "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp bind 142 \"/vehicle/status/gear_status\", 10, std::bind(&AutowareStatePanel::onShift, this, _1)); \n", + "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp create_subscription 144 sub_engage_ = raw_node_->create_subscription<tier4_external_api_msgs::msg::EngageStatus>( \n", + "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp bind 145 \"/api/external/get/engage\", 10, std::bind(&AutowareStatePanel::onEngageStatus, this, _1)); \n", + "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp create_subscription 147 sub_emergency_ = raw_node_->create_subscription<tier4_external_api_msgs::msg::Emergency>( \n", + "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp bind 148 \"/api/autoware/get/emergency\", 10, std::bind(&AutowareStatePanel::onEmergencyStatus, this, _1)); \n", + "/universe/autoware.universe/perception/heatmap_visualizer/src/heatmap_visualizer_node.cpp create_subscription 39 objects_sub_ = create_subscription<autoware_auto_perception_msgs::msg::DetectedObjects>( \n", + "/universe/autoware.universe/perception/heatmap_visualizer/src/heatmap_visualizer_node.cpp bind 41 std::bind(&HeatmapVisualizerNode::detectedObjectsCallback, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/common/path_distance_calculator/src/path_distance_calculator.cpp create_subscription 27 sub_path_ = create_subscription<autoware_auto_planning_msgs::msg::Path>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/common/path_distance_calculator/src/path_distance_calculator.cpp#create_subscription@27\n", + "/universe/autoware.universe/perception/image_projection_based_fusion/src/debugger.cpp create_subscription 43 auto sub = image_transport::create_subscription( \n", + "/universe/autoware.universe/perception/image_projection_based_fusion/src/debugger.cpp bind 45 std::bind(&Debugger::imageCallback, this, std::placeholders::_1, img_i), \"raw\", \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/operator.cpp create_subscription 41 sub_get_operator_ = create_subscription<tier4_external_api_msgs::msg::Operator>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/operator.cpp bind 42 \"/api/autoware/get/operator\", rclcpp::QoS(1), std::bind(&Operator::onOperator, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/operator.cpp create_subscription 43 sub_get_observer_ = create_subscription<tier4_external_api_msgs::msg::Observer>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/operator.cpp bind 44 \"/api/autoware/get/observer\", rclcpp::QoS(1), std::bind(&Operator::onObserver, this, _1)); \n", + "/universe/autoware.universe/perception/lidar_apollo_instance_segmentation/src/node.cpp create_subscription 37 pointcloud_sub_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", + "/universe/autoware.universe/perception/lidar_apollo_instance_segmentation/src/node.cpp bind 39 std::bind(&LidarInstanceSegmentationNode::pointCloudCallback, this, _1)); \n", + "/universe/autoware.universe/common/tier4_autoware_utils/src/vehicle/vehicle_state_checker.cpp create_subscription 27 sub_odom_ = node->create_subscription<Odometry>( \n", + "/universe/autoware.universe/common/tier4_autoware_utils/src/vehicle/vehicle_state_checker.cpp bind 29 std::bind(&VehicleStopChecker::onOdom, this, _1)); \n", + "/universe/autoware.universe/common/tier4_autoware_utils/src/vehicle/vehicle_state_checker.cpp create_subscription 90 sub_trajectory_ = node->create_subscription<Trajectory>( \n", + "/universe/autoware.universe/common/tier4_autoware_utils/src/vehicle/vehicle_state_checker.cpp bind 92 std::bind(&VehicleArrivalChecker::onTrajectory, this, _1)); \n", + "/universe/external/grid_map/grid_map_visualization/src/GridMapVisualization.cpp create_subscription 148 mapSubscriber_ = nodePtr->create_subscription<grid_map_msgs::msg::GridMap>( \n", + "/universe/external/grid_map/grid_map_visualization/src/GridMapVisualization.cpp bind 150 std::bind(&GridMapVisualization::callback, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/localization/vehicle_velocity_converter/src/vehicle_velocity_converter.cpp create_subscription 25 vehicle_report_sub_ = create_subscription<autoware_auto_vehicle_msgs::msg::VelocityReport>( \n", + "/universe/autoware.universe/localization/vehicle_velocity_converter/src/vehicle_velocity_converter.cpp bind 27 std::bind(&VehicleVelocityConverter::callbackVelocityReport, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/system/dummy_infrastructure/src/dummy_infrastructure_node/dummy_infrastructure_node.cpp create_subscription 82 sub_command_array_ = create_subscription<InfrastructureCommandArray>( \n", + "/universe/autoware.universe/system/dummy_infrastructure/src/dummy_infrastructure_node/dummy_infrastructure_node.cpp bind 84 std::bind(&DummyInfrastructureNode::onCommandArray, this, _1)); \n", + "/universe/autoware.universe/sensing/gnss_poser/src/gnss_poser_core.cpp create_subscription 45 nav_sat_fix_sub_ = create_subscription<sensor_msgs::msg::NavSatFix>( \n", + "/universe/autoware.universe/sensing/gnss_poser/src/gnss_poser_core.cpp bind 46 \"fix\", rclcpp::QoS{1}, std::bind(&GNSSPoser::callbackNavSatFix, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/sensing/gnss_poser/src/gnss_poser_core.cpp create_subscription 47 nav_pvt_sub_ = create_subscription<ublox_msgs::msg::NavPVT>( \n", + "/universe/autoware.universe/sensing/gnss_poser/src/gnss_poser_core.cpp bind 48 \"navpvt\", rclcpp::QoS{1}, std::bind(&GNSSPoser::callbackNavPVT, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/common/tier4_calibration_rviz_plugin/src/accel_brake_map_calibrator_button_panel.cpp create_subscription 71 update_suggest_sub_ = raw_node->create_subscription<std_msgs::msg::Bool>( \n", + "/universe/autoware.universe/common/tier4_calibration_rviz_plugin/src/accel_brake_map_calibrator_button_panel.cpp bind 73 std::bind( \n", + "/universe/autoware.universe/common/tier4_calibration_rviz_plugin/src/accel_brake_map_calibrator_button_panel.cpp create_subscription 103 update_suggest_sub_ = raw_node->create_subscription<std_msgs::msg::Bool>( \n", + "/universe/autoware.universe/common/tier4_calibration_rviz_plugin/src/accel_brake_map_calibrator_button_panel.cpp bind 105 std::bind( \n", + "/universe/autoware.universe/perception/compare_map_segmentation/src/distance_based_compare_map_filter_nodelet.cpp create_subscription 33 sub_map_ = this->create_subscription<PointCloud2>( \n", + "/universe/autoware.universe/perception/compare_map_segmentation/src/distance_based_compare_map_filter_nodelet.cpp bind 35 std::bind(&DistanceBasedCompareMapFilterComponent::input_target_callback, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/fail_safe_state.cpp create_subscription 26 sub_state_ = create_subscription<autoware_auto_system_msgs::msg::EmergencyState>( \n", + "[WARN] Could not find matching bind statement for /universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/fail_safe_state.cpp#create_subscription@26\n", + "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_diag_publisher.cpp create_subscription 38 can_sub_ = create_subscription<can_msgs::msg::Frame>( \n", + "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_diag_publisher.cpp bind 39 \"/pacmod/can_tx\", 1, std::bind(&PacmodDiagPublisher::callbackCan, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/perception/shape_estimation/src/node.cpp create_subscription 39 sub_ = create_subscription<DetectedObjectsWithFeature>( \n", + "/universe/autoware.universe/perception/shape_estimation/src/node.cpp bind 40 \"input\", rclcpp::QoS{1}, std::bind(&ShapeEstimationNode::callback, this, _1)); \n", + "/universe/autoware.universe/localization/pose_initializer/src/pose_initializer_core.cpp create_subscription 71 initial_pose_sub_ = this->create_subscription<geometry_msgs::msg::PoseWithCovarianceStamped>( \n", + "/universe/autoware.universe/localization/pose_initializer/src/pose_initializer_core.cpp bind 73 std::bind(&PoseInitializer::callbackInitialPose, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/localization/pose_initializer/src/pose_initializer_core.cpp create_subscription 74 map_points_sub_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", + "/universe/autoware.universe/localization/pose_initializer/src/pose_initializer_core.cpp bind 76 std::bind(&PoseInitializer::callbackMapPoints, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/localization/pose_initializer/src/pose_initializer_core.cpp create_subscription 77 gnss_pose_sub_ = this->create_subscription<geometry_msgs::msg::PoseWithCovarianceStamped>( \n", + "/universe/autoware.universe/localization/pose_initializer/src/pose_initializer_core.cpp bind 79 std::bind(&PoseInitializer::callbackGNSSPoseCov, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/localization/pose_initializer/src/pose_initializer_core.cpp create_subscription 81 this->create_subscription<tier4_localization_msgs::msg::PoseInitializationRequest>( \n", + "/universe/autoware.universe/localization/pose_initializer/src/pose_initializer_core.cpp bind 83 std::bind(&PoseInitializer::callbackPoseInitializationRequest, this, std::placeholders::_1)); \n", + "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp create_subscription 60 sub_steer_ = this->create_subscription<autoware_auto_vehicle_msgs::msg::SteeringReport>( \n", + "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp bind 61 \"input/steer\", 1, std::bind(&AutowareIvAdapter::callbackSteer, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp create_subscription 63 this->create_subscription<autoware_auto_control_msgs::msg::AckermannControlCommand>( \n", + "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp bind 65 std::bind(&AutowareIvAdapter::callbackVehicleCmd, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp create_subscription 67 this->create_subscription<autoware_auto_vehicle_msgs::msg::TurnIndicatorsReport>( \n", + "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp bind 68 \"input/turn_indicators\", 1, std::bind(&AutowareIvAdapter::callbackTurnIndicators, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp create_subscription 70 this->create_subscription<autoware_auto_vehicle_msgs::msg::HazardLightsReport>( \n", + "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp bind 71 \"input/hazard_lights\", 1, std::bind(&AutowareIvAdapter::callbackHazardLights, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp create_subscription 72 sub_odometry_ = this->create_subscription<nav_msgs::msg::Odometry>( \n", + "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp bind 73 \"input/odometry\", 1, std::bind(&AutowareIvAdapter::callbackTwist, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp create_subscription 74 sub_gear_ = this->create_subscription<autoware_auto_vehicle_msgs::msg::GearReport>( \n", + "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp bind 75 \"input/gear\", 1, std::bind(&AutowareIvAdapter::callbackGear, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp create_subscription 76 sub_battery_ = this->create_subscription<tier4_vehicle_msgs::msg::BatteryStatus>( \n", + "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp bind 77 \"input/battery\", 1, std::bind(&AutowareIvAdapter::callbackBattery, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp create_subscription 78 sub_nav_sat_ = this->create_subscription<sensor_msgs::msg::NavSatFix>( \n", + "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp bind 79 \"input/nav_sat\", 1, std::bind(&AutowareIvAdapter::callbackNavSat, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp create_subscription 80 sub_autoware_state_ = this->create_subscription<tier4_system_msgs::msg::AutowareState>( \n", + "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp bind 81 \"input/autoware_state\", 1, std::bind(&AutowareIvAdapter::callbackAutowareState, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp create_subscription 82 sub_control_mode_ = this->create_subscription<autoware_auto_vehicle_msg \n", + "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp bind 83 \"input/control_mode\", 1, std::bind(&AutowareIvAdapter::callbackControlMode, this, _1)); \n", + "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_additional_debug_publisher/pacmod_additional_debug_publisher_node.cpp create_subscription 32 sub_ = create_subscription<can_msgs::msg::Frame>( \n", + "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_additional_debug_publisher/pacmod_additional_debug_publisher_node.cpp bind 34 std::bind(&PacmodAdditionalDebugPublisherNode::canTxCallback, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp create_subscription 28 blind_spot_sub_ = create_subscription<CooperateStatusArray>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp bind 30 rclcpp::QoS(1), std::bind(&RTCController::blindSpotCallback, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp create_subscription 31 crosswalk_sub_ = create_subscription<CooperateStatusArray>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp bind 33 rclcpp::QoS(1), std::bind(&RTCController::crosswalkCallback, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp create_subscription 34 detection_area_sub_ = create_subscription<CooperateStatusArray>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp bind 36 rclcpp::QoS(1), std::bind(&RTCController::detectionAreaCallback, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp create_subscription 37 intersection_sub_ = create_subscription<CooperateStatusArray>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp bind 39 rclcpp::QoS(1), std::bind(&RTCController::intersectionCallback, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp create_subscription 40 no_stopping_area_sub_ = create_subscription<CooperateStatusArray>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp bind 42 rclcpp::QoS(1), std::bind(&RTCController::noStoppingAreaCallback, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp create_subscription 43 occlusion_spot_sub_ = create_subscription<CooperateStatusArray>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp bind 45 rclcpp::QoS(1), std::bind(&RTCController::occlusionSpotCallback, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp create_subscription 46 traffic_light_sub_ = create_subscription<CooperateStatusArray>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp bind 48 rclcpp::QoS(1), std::bind(&RTCController::trafficLightCallback, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp create_subscription 49 virtual_traffic_light_sub_ = create_subscription<CooperateStatusArray>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp bind 52 rclcpp::QoS(1), std::bind(&RTCController::virtualTrafficLightCallback, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp create_subscription 53 lane_change_left_sub_ = create_subscription<CooperateStatusArray>( \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp bind 55 rclcpp::QoS(1), std::bind(&RTCController::laneChangeLeftCallback, this, _1)); \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp create_subscription 56 lane_change_right_sub_ = create_subscription<CooperateStatusArra \n", + "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp bind 58 rclcpp::QoS(1), std::bind(&RTCController::laneChangeRightCallback, this, _1)); \n", + "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py create_subscription 73 self.sub0 = self.create_subscription( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py#create_subscription@73\n", + "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py create_subscription 79 self.sub1 = self.create_subscription( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py#create_subscription@79\n", + "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py create_subscription 82 self.sub2 = self.create_subscription( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py#create_subscription@82\n", + "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py create_subscription 88 self.sub3 = self.create_subscription( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py#create_subscription@88\n", + "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py create_subscription 91 self.sub4 = self.create_subscription( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py#create_subscription@91\n", + "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py create_subscription 99 self.sub5 = self.create_subscription( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py#create_subscription@99\n", + "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py create_subscription 104 self.sub6 = self.create_subscription( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py#create_subscription@104\n", + "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py create_subscription 110 self.sub7 = self.create_subscription( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py#create_subscription@110\n", + "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py create_subscription 115 self.sub8 = self.create_subscription( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py#create_subscription@115\n", + "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py create_subscription 118 self.sub12 = self.create_subscription( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py#create_subscription@118\n", + "/universe/autoware.universe/localization/gyro_odometer/src/gyro_odometer_core.cpp create_subscription 33 vehicle_twist_with_cov_sub_ = create_subscription<geometry_msgs::msg::TwistWithCovarianceStamped>( \n", + "/universe/autoware.universe/localization/gyro_odometer/src/gyro_odometer_core.cpp bind 35 std::bind(&GyroOdometer::callbackTwistWithCovariance, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/localization/gyro_odometer/src/gyro_odometer_core.cpp create_subscription 37 imu_sub_ = create_subscription<sensor_msgs::msg::Imu>( \n", + "/universe/autoware.universe/localization/gyro_odometer/src/gyro_odometer_core.cpp bind 38 \"imu\", rclcpp::QoS{100}, std::bind(&GyroOdometer::callbackImu, this, std::placeholders::_1)); \n", + "/universe/autoware.universe/perception/tensorrt_yolo/src/nodelet.cpp create_subscription 124 image_sub_ = image_transport::create_subscription( \n", + "/universe/autoware.universe/perception/tensorrt_yolo/src/nodelet.cpp bind 125 this, \"in/image\", std::bind(&TensorrtYoloNodelet::callback, this, _1), \"raw\", \n", + "/universe/autoware.universe/localization/ekf_localizer/test/src/test_ekf_localizer.cpp create_subscription 45 sub_twist = this->create_subscription<geometry_msgs::msg::TwistStamped>( \n", + "/universe/autoware.universe/localization/ekf_localizer/test/src/test_ekf_localizer.cpp bind 46 \"/ekf_twist\", 1, std::bind(&TestEKFLocalizerNode::testCallbackTwist, this, _1)); \n", + "/universe/autoware.universe/localization/ekf_localizer/test/src/test_ekf_localizer.cpp create_subscription 47 sub_pose = this->create_subscription<geometry_msgs::msg::PoseStamped>( \n", + "/universe/autoware.universe/localization/ekf_localizer/test/src/test_ekf_localizer.cpp bind 48 \"/ekf_pose\", 1, std::bind(&TestEKFLocalizerNode::testCallbackPose, this, _1)); \n", + "/universe/autoware.universe/common/tier4_planning_rviz_plugin/src/drivable_area/display.cpp create_subscription 234 ->template create_subscription<map_msgs::msg::OccupancyGridUpdate>( \n", + "[WARN] Could not find matching bind statement for /universe/autoware.universe/common/tier4_planning_rviz_plugin/src/drivable_area/display.cpp#create_subscription@234\n", + "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/concatenate_data/concatenate_data_nodelet.cpp create_subscription 158 filters_[d] = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", + "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/concatenate_data/concatenate_data_nodelet.cpp bind 161 auto twist_cb = std::bind( \n", + "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/concatenate_data/concatenate_data_nodelet.cpp create_subscription 163 sub_twist_ = this->create_subscription<autoware_auto_vehicle_msgs::msg::VelocityReport>( \n", + "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/concatenate_data/concatenate_data_nodelet.cpp bind 173 std::bind(&PointCloudConcatenateDataSynchronizerComponent::timer_callback, this)); \n" + ] + } + ], + "source": [ + "def sym(path, symbol):\n", + " r = requests.get(jj(API_URL, f\"search?path={quote(path)}&symbol={quote(symbol)}\"))\n", + " r.raise_for_status()\n", + " results = r.json()['results']\n", + " records = []\n", + " for path, matches in results.items():\n", + " for match in matches:\n", + " records.append((path, symbol, int(match['lineNumber']) - 1, match['line']))\n", + " \n", + " df = pd.DataFrame(records, columns=[\"path\", \"symbol\", \"line_num\", \"line\"])\n", + " return df\n", + "\n", + "\n", + "def list_subscriptions(path):\n", + " #\"results\": {\n", + " #\"/universe/autoware.universe/planning/behavior_path_planner/include/behavior_path_planner/behavior_path_planner_node.hpp\": [\n", + " # {\n", + " # \"line\": \" rclcpp::Subscription<Odometry>::SharedPtr velocity_subscriber_;\",\n", + " # \"lineNumber\": \"90\"\n", + " # }\n", + " #],\n", + " syms_sub = sym(path, \"create_subscription\")\n", + " for path, symb, line_num, line in syms_sub.itertuples(index=False, name=None):\n", + " syms_bind = sym(path, \"bind\")\n", + " print(f\"{path:120s} {symb:25s} {line_num:4d} {line:120s}\")\n", + " closest_bind = syms_bind[syms_bind[\"line_num\"]>=line_num][:1]\n", + " if len(closest_bind) == 0:\n", + " print(f\"[WARN] Could not find matching bind statement for {path}#{symb}@{line_num}\")\n", + " for cpath, csymb, cline_num, cline in closest_bind.itertuples(index=False, name=None):\n", + " print(f\"{cpath:120s} {csymb:25s} {cline_num:4d} {cline:120s}\")\n", + "\n", + "\n", + "\n", + "list_subscriptions(\"\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "interpreter": { + "hash": "e7370f93d1d0cde622a1f8e1c04877d8463912d04d973331ad4851f04de6915a" + }, + "kernelspec": { + "display_name": "Python 3.8.10 64-bit", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.10" + }, + "orig_nbformat": 4 + }, + "nbformat": 4, + "nbformat_minor": 2 +} From 8d22b7aa295a759b5518f9f91c6d8780f8861ed9 Mon Sep 17 00:00:00 2001 From: Maximilian Schmeller Date: Tue, 19 Jul 2022 18:32:12 +0200 Subject: [PATCH 3/3] Process Clang-based tool output. Prepare for merge with ma-autoware-trace-analysis. --- annotate_interactively.py | 419 ++++++++++++++++--- ast_utils.py | 281 ------------- clang-digger.ipynb | 479 ---------------------- digger.ipynb | 824 -------------------------------------- 4 files changed, 373 insertions(+), 1630 deletions(-) delete mode 100644 ast_utils.py delete mode 100644 clang-digger.ipynb delete mode 100644 digger.ipynb diff --git a/annotate_interactively.py b/annotate_interactively.py index 0e622cc..b99182a 100644 --- a/annotate_interactively.py +++ b/annotate_interactively.py @@ -1,21 +1,334 @@ +import functools import json -import os.path -import sys +import os +import pickle +import re +from dataclasses import dataclass +from typing import Tuple, List, Literal, Iterable + +import numpy as np +import pandas as pd import termcolor -from typing import Dict, List, Tuple + +IN_DIR = "/home/max/Projects/llvm-project/clang-tools-extra/ros2-internal-dependency-checker/output" +SRC_DIR = "/home/max/Projects/autoware/src" + +OUT_NAME = "clang_objects.pkl" + + +def SRC_FILE_NAME(in_file_name: str): + return os.path.join(SRC_DIR, in_file_name.replace("-", "/").replace(".json", ".cpp")) ignored_idfs = set() +class SetEncoder(json.JSONEncoder): + def default(self, o): + if isinstance(o, set): + return list(o) + match o: + case set(): + return list(o) + case list() | dict() | int() | float() | str(): + return json.JSONEncoder.default(self, o) + case np.int64: + return json.JSONEncoder.default(self, int(o)) + + return json.JSONEncoder.default(self, o) + + +def fuse_fields(f1, f2): + if f1 is None: + return f2 + + if f2 is None: + return f1 + + if f1 == f2: + return f1 + + raise ValueError(f"Inconsistent fields {f1=} and {f2=} cannot be fused") + + +def fuse_objects(o1, o2): + field_names = o1.__dataclass_fields__.keys() + for f in field_names: + setattr(o1, f, fuse_fields(getattr(o1, f), getattr(o2, f))) + return o1 + + +@dataclass +class SourceRange: + start_file: str + start_line: int | None + start_col: int | None + + end_file: str + end_line: int | None + end_col: int | None + + def __init__(self, json_obj): + begin = json_obj["begin"].split(":") + end = json_obj["end"].split(":") + + self.start_file = os.path.realpath(begin[0]) + self.start_line = int(begin[1]) if len(begin) > 1 else None + self.start_col = int(begin[2].split(" ")[0]) if len(begin) > 2 else None + + self.end_file = os.path.realpath(end[0]) + self.end_line = int(end[1]) if len(end) > 1 else None + self.end_col = int(end[2].split(" ")[0]) if len(end) > 2 else None + + def __hash__(self): + return hash((self.start_file, self.start_line, self.start_col, + self.end_file, self.end_line, self.end_col)) + + +@dataclass +class Node: + id: int + qualified_name: str + source_range: 'SourceRange' + field_ids: List[int] | None + method_ids: List[int] | None + + def __init__(self, json_obj): + self.id = json_obj['id'] + self.qualified_name = json_obj['id'] + self.source_range = SourceRange(json_obj['source_range']) + self.field_ids = list(map(lambda obj: obj['id'], json_obj['fields'])) if 'fields' in json_obj else None + self.method_ids = list(map(lambda obj: obj['id'], json_obj['methods'])) if 'methods' in json_obj else None + + def __hash__(self): + return hash(self.id) + + +@dataclass +class Method: + id: int + qualified_name: str + source_range: 'SourceRange' + return_type: str | None + parameter_types: List[str] | None + + def __init__(self, json_obj): + self.id = json_obj['id'] + self.qualified_name = json_obj['qualified_name'] + self.source_range = SourceRange(json_obj['source_range']) + self.return_type = json_obj['signature']['return_type'] if 'signature' in json_obj else None + self.parameter_types = json_obj['signature']['parameter_types'] if 'signature' in json_obj else None + + def __hash__(self): + return hash(self.id) + + +@dataclass +class Field: + id: int + qualified_name: str + source_range: 'SourceRange' + + def __init__(self, json_obj): + self.id = json_obj['id'] + self.qualified_name = json_obj['qualified_name'] + self.source_range = SourceRange(json_obj['source_range']) + + def __hash__(self): + return hash(self.id) + + +@dataclass +class MemberRef: + type: Literal["read", "write", "call", "arg", "pub"] | None + member_chain: List[int] + method_id: int | None + node_id: int | None + source_range: 'SourceRange' + + def __init__(self, json_obj): + access_type = json_obj['context']['access_type'] + if access_type == 'none': + access_type = None + self.type = access_type + self.member_chain = list(map(lambda obj: obj['id'], json_obj['member'][::-1])) + self.method_id = json_obj['context']['method']['id'] if 'method' in json_obj['context'] else None + self.node_id = json_obj['context']['node']['id'] if 'node' in json_obj['context'] else None + self.source_range = SourceRange(json_obj['context']['statement']['source_range']) + + def __hash__(self): + return self.source_range.__hash__() + + +@dataclass +class Subscription: + topic: str | None + callback_id: int | None + source_range: 'SourceRange' + + def __init__(self, json_obj): + self.topic = json_obj['topic'] if 'topic' in json_obj else None + self.callback_id = json_obj['callback']['id'] if 'callback' in json_obj else None + self.source_range = SourceRange(json_obj['source_range']) + + def __hash__(self): + return self.source_range.__hash__() + + +@dataclass +class Publisher: + topic: str | None + member_id: int | None + source_range: 'SourceRange' + + def update(self, t2: 'Timer'): + return self + + def __init__(self, json_obj): + self.topic = json_obj['topic'] if 'topic' in json_obj else None + self.member_id = json_obj['member']['id'] if 'member' in json_obj else None + self.source_range = SourceRange(json_obj['source_range']) + + def __hash__(self): + return self.source_range.__hash__() + + +@dataclass +class Timer: + callback_id: int | None + source_range: 'SourceRange' + + def __init__(self, json_obj): + self.callback_id = json_obj['callback']['id'] if 'callback' in json_obj else None + self.source_range = SourceRange(json_obj['source_range']) + + def __hash__(self): + return self.source_range.__hash__() + + +def find_data_deps(nodes: Iterable[Node], pubs: Iterable[Publisher], subs: Iterable[Subscription], + timers: Iterable[Timer], fields, methods, accesses: Iterable[MemberRef]): + writes = set() + reads = set() + publications = set() + + for member_ref in accesses: + member_id = member_ref.member_chain[0] if member_ref.member_chain else None + if member_id is None: + print(f"[WARN ] MemberRef without any members in chain @ {member_ref.source_range}") + continue + + dep_tuple = (member_ref.method_id, member_id) + + match member_ref.type: + case "write": + writes.add(dep_tuple) + case "read": + reads.add(dep_tuple) + case "call" | "arg": + writes.add(dep_tuple) + reads.add(dep_tuple) + case "pub": + publications.add(dep_tuple) + + reads = pd.DataFrame.from_records(list(reads), columns=['method_id', 'member_id']) + writes = pd.DataFrame.from_records(list(writes), columns=['method_id', 'member_id']) + pub_dict = {method: set() for method, _ in publications} + for method, member in publications: + pub_dict[method].add(member) + + deps = {} + + for reading_method in reads["method_id"].unique().tolist(): + deps[reading_method] = set() + + read_members = reads[reads['method_id'] == reading_method]["member_id"].unique().tolist() + + for read_member in read_members: + writing_methods = writes[writes['member_id'] == read_member]['method_id'].unique().tolist() + deps[reading_method].update(writing_methods) + + deps[reading_method].discard(reading_method) # Remove reflexive dependencies + + return publications, deps + + +def dedup(elems): + hash_map = {} + + for e in elems: + if e.__hash__() not in hash_map: + hash_map[e.__hash__()] = [] + hash_map[e.__hash__()].append(e) + + ret_list = [] + for hash, elems in hash_map.items(): + if len(elems) == 1: + ret_list += elems + continue + + elem = functools.reduce(fuse_objects, elems[1:], elems[0]) + ret_list.append(elem) + print(f"Fused {len(elems)} {type(elem)}s") + + return ret_list + + +def definitions_from_json(cb_dict): + nodes = [] + pubs = [] + subs = [] + timers = [] + accesses = [] + fields = [] + methods = [] + + if "nodes" in cb_dict: + for node in cb_dict["nodes"]: + nodes.append(Node(node)) + for field in node["fields"]: + fields.append(Field(field)) + for method in node["methods"]: + methods.append(Method(method)) + + if "publishers" in cb_dict: + for publisher in cb_dict["publishers"]: + pubs.append(Publisher(publisher)) + + if "subscriptions" in cb_dict: + for subscription in cb_dict["subscriptions"]: + subs.append(Subscription(subscription)) + + if "timers" in cb_dict: + for timer in cb_dict["timers"]: + timers.append(Timer(timer)) + + if "accesses" in cb_dict: + for access_type in cb_dict["accesses"]: + for access in cb_dict["accesses"][access_type]: + accesses.append(MemberRef(access)) + + nodes = dedup(nodes) + pubs = dedup(pubs) + subs = dedup(subs) + timers = dedup(timers) + fields = dedup(fields) + methods = dedup(methods) + + return nodes, pubs, subs, timers, fields, methods, accesses + + def highlight(substr: str, text: str): - return text.replace(substr, termcolor.colored(substr, 'green', attrs=['bold'])) + regex = r"(?<=\W)({substr})(?=\W)|^({substr})$" + return re.sub(regex.format(substr=substr), termcolor.colored(r"\1\2", 'magenta', attrs=['bold']), text) def prompt_user(file: str, cb: str, idf: str, text: str) -> Tuple[str, bool, bool]: - print(f"{file.rstrip('.cpp')}->{cb}:") - print(highlight(idf, text)) - answer = input(f"{highlight(idf, idf)}\nwrite (w), read (r), both (rw), ignore future (i) exit and save (q), undo (z), skip (Enter): ") + print('\n' * 5) + print(f"{file.rstrip('.cpp').rstrip('.hpp')}\n->{cb}:") + print(highlight(idf.split('::')[-1], text)) + answer = input(f"{highlight(idf, idf)}\n" + f"write (w), read (r), both (rw), ignore future (i) exit and save (q), undo (z), skip (Enter): ") if answer not in ["", "r", "w", "rw", "q", "z", "i"]: print(f"Invalid answer '{answer}', try again.") answer = prompt_user(file, cb, idf, text) @@ -28,35 +341,25 @@ def prompt_user(file: str, cb: str, idf: str, text: str) -> Tuple[str, bool, boo return answer, answer == "q", answer == "z" -def main(cb_dict: Dict): +def main(nodes, cbs, fields, methods): + open_files = {} cb_rw_dict = {} jobs = [] - for file, cbs in cb_dict.items(): - cb_rw_dict[file] = {} - for cb, cb_data in cbs.items(): - cb: str - if 'error' in cb_data: - print(f"Error: {cb_data['error']}") - continue - identifiers = cb_data['identifiers'] - text_lines = cb_data['body_lines'] - text = "".join(text_lines) + for cb_id, cb_dict in cbs.items(): + cb_rw_dict[cb_dict['qualified_name']] = {'reads': set(), 'writes': set()} + for ref_dict in cb_dict['member_refs']: + if ref_dict['file'] not in open_files: + with open(ref_dict['file'], 'r') as f: + open_files[ref_dict['file']] = f.readlines() - cb_rw_dict[file][cb] = {'reads': [], 'writes': []} - - for idf in identifiers: - jobs.append((file, cb, idf, text)) - - # Skip already saved mappings - if os.path.exists("cb_mapping.json"): - with open("cb_mapping.json", "r") as f: - prev_rw_dict = json.load(f) - jobs = [(file, cb, idf, text) - for file, cb, idf, text in jobs - if file not in prev_rw_dict - or cb not in prev_rw_dict[file]] + ln = ref_dict['start_line'] - 1 + text = open_files[ref_dict['file']] + line = termcolor.colored(text[ln], None, "on_cyan") + lines = [*text[ln - 3:ln], line, *text[ln + 1:ln + 4]] + text = ''.join(lines) + jobs.append((ref_dict['file'], cb_dict['qualified_name'], ref_dict['qualified_name'], text)) i = 0 do_undo = False @@ -65,11 +368,17 @@ def main(cb_dict: Dict): if do_undo: ignored_idfs.discard(idf) - cb_rw_dict[file][cb]['reads'].remove(idf) - cb_rw_dict[file][cb]['writes'].remove(idf) + cb_rw_dict[cb]['reads'].discard(idf) + cb_rw_dict[cb]['writes'].discard(idf) do_undo = False if idf in ignored_idfs: + print("Ignoring", idf) + i += 1 + continue + + if idf in cb_rw_dict[cb]['reads'] and idf in cb_rw_dict[cb]['writes']: + print(f"{idf} is already written to and read from in {cb}, skipping.") i += 1 continue @@ -84,29 +393,47 @@ def main(cb_dict: Dict): continue if 'r' in classification: - cb_rw_dict[file][cb]['reads'].append(idf) + cb_rw_dict[cb]['reads'].add(idf) if 'w' in classification: - cb_rw_dict[file][cb]['writes'].append(idf) + cb_rw_dict[cb]['writes'].add(idf) if not any(x in classification for x in ['r', 'w']): print(f"Ignoring occurences of {idf} in cb.") i += 1 - with open("cb_mapping.json", "w") as f: - json.dump(cb_rw_dict, f) + with open("deps.json", "w") as f: + json.dump(cb_rw_dict, f, cls=SetEncoder) print("Done.") if __name__ == "__main__": - if len(sys.argv) != 2: - print(f"Usage: {sys.argv[0]} ") - exit(0) + out_dict = {} - with open(sys.argv[1], "r") as f: - cb_dict = json.load(f) - common_prefix = os.path.commonprefix(list(cb_dict.keys())) - strip_len = len(common_prefix) - cb_dict = {k[strip_len:]: v for k, v in cb_dict.items()} + for filename in os.listdir(IN_DIR): + source_filename = SRC_FILE_NAME(filename) + print(f"Processing {source_filename}") + with open(os.path.join(IN_DIR, filename), "r") as f: + cb_dict = json.load(f) + if cb_dict is None: + print(f" [WARN ] Empty tool output detected in {filename}") + continue + definitions = definitions_from_json(cb_dict) + deps, publications = find_data_deps(*definitions) - main(cb_dict) + (nodes, pubs, subs, timers, fields, methods, accesses) = definitions + out_dict[source_filename] = { + "dependencies": deps, + "publications": publications, + "nodes": nodes, + "publishers": pubs, + "subscriptions": subs, + "timers": timers, + "fields": fields, + "methods": methods + } + + with open(OUT_NAME, "wb") as f: + pickle.dump(out_dict, f) + + print("Done.") diff --git a/ast_utils.py b/ast_utils.py deleted file mode 100644 index 91eadba..0000000 --- a/ast_utils.py +++ /dev/null @@ -1,281 +0,0 @@ -import clang.cindex as ci -from clang.cindex import TokenKind as tk -from clang.cindex import CursorKind as ck -from typing import List - - -class TUHandler: - BRACK_MAP = { - ')': '(', - ']': '[', - '>': '<', - '}': '{' - } - - def __init__(self, tu: ci.TranslationUnit): - self.tu = tu - - def get_subscription_callback_handlers(self): - ################################################# - # Find create_subscription function calls - ################################################# - - c: ci.Cursor = self.tu.cursor - create_subscription_tokens = [ - " ".join(map(lambda t2: t2.spelling, t.cursor.get_tokens())) - for t in c.get_tokens() - if t.kind == tk.IDENTIFIER and t.spelling == "create_subscription" - ] - - print(create_subscription_tokens) - - ################################################# - # Extract callback function identifier - ################################################# - - - ################################################# - # Locate definition for callback function - ################################################# - pass - - def get_timer_callback_handlers(self): - pass - - def get_member_accesses(self, function_def: ci.Cursor): - pass - - # def consume_generics(ts: List[ci.Token]): - # if not ts or ts[0].spelling != '<': - # return ts, None - - # gen = [] - # for i, t in enumerate(ts): - # match t.spelling: - # case '<': - # pass - # case '>': - # return ts[i+1:], gen - # case _: - # gen.append(t) - - # return ts, None - - # def consume_args(ts: List[ci.Token]): - # if not ts or ts[0].spelling != '(': - # print(f"Opening token is {ts[0].spelling}, not (") - # return ts, None - - # ts = ts[1:] # strip start tok - - # args = [] - # current_arg = [] - # brack_depth = 1 - # for i, t in enumerate(ts): - # match t.spelling: - # case '(': - # brack_depth += 1 - # current_arg.append(t) - # case ')': - # brack_depth -= 1 - # if brack_depth == 0: - # args.append(current_arg) - # return ts[i+1:], args - # else: - # current_arg.append(t) - # case ',': - # if brack_depth > 1: - # current_arg.append(t) - # else: - # args.append(current_arg) - # current_arg = [] - # case _: - # current_arg.append(t) - - # return ts, None - - # def consume_function_identifier(ts: List[ci.Token]): - # identifier = [] - # for i, t in enumerate(ts): - # match t.kind: - # case tk.PUNCTUATION: - # match t.spelling: - # case "(" | "<": - # return ts[i:], identifier - # case _: - # identifier.append(t) - # case _: - # identifier.append(t) - - # return ts, None - - # def consume_function_call(ts: List[ci.Token]): - # assert ts and ts[0].kind == tk.IDENTIFIER - # ts, identifier = consume_function_identifier(ts) - # ts, gen = consume_generics(ts) - # ts, args = consume_args(ts) - - # return ts, identifier, gen, args - - # def find_children(cur: ci.Cursor, find_func): - # found = [] - # if find_func(cur): - # found.append(cur) - - # for c in cur.get_children(): - # found += find_children(c, find_func) - - # return found - - # def find_body(cur: ci.Cursor, symbol: List[ci.Token]): - # if symbol is None: - # return - - # method_candidates = find_children(cur, lambda c: c.kind == ck.CXX_METHOD and any( - # map(lambda t: t.spelling == symbol[-1].spelling, c.get_tokens()))) - # valid_candidates = [] - # for cand in method_candidates: - # func_bodies = find_children( - # cand, lambda c: c.kind == ck.COMPOUND_STMT) - # if not func_bodies: - # continue - # valid_candidates.append(func_bodies[0]) - - # if len(valid_candidates) != 1: - # print( - # f"Error, {pt(symbol)} has {len(valid_candidates)} candidates for a function definition!") - # return None - - # def _rec(c: ci.Cursor, lvl=0): - # print( - # f"{' '*lvl*2}{str(c.kind):.<40s} {c.spelling:30s} {';;'.join(str(arg.kind) for arg in c.get_arguments())}") - # for ch in c.get_children(): - # _rec(ch, lvl+1) - - # _rec(valid_candidates[0]) - - # return list(valid_candidates[0].get_tokens()) - - # def get_identifiers_with_lines(tokens: List[ci.Token]): - - # stmt_extent = (tokens[0].extent.start, tokens[-1].extent.end) - # stmt_file = stmt_extent[0].file.name - # file_slice = slice(stmt_extent[0].line, stmt_extent[-1].line) - # with open(stmt_file, "r") as f: - # stmt_text = f.readlines()[file_slice] - - # ids = [] - # cur_id = [] - # for t in tokens: - # match t.kind: - # case tk.IDENTIFIER: - # cur_id.append(t) - # case tk.PUNCTUATION: - # match t.spelling: - # case "::" | "->" | ".": - # if cur_id: - # cur_id.append(t) - # case _: - # if cur_id: - # ids.append(cur_id) - # cur_id = [] - # case _: - # if cur_id: - # ids.append(cur_id) - # cur_id = [] - - # return ids, stmt_text - - # def consume_lambda_entry(ts: List[ci.Token]): - # if not ts or ts[0].spelling != "[": - # return ts, None - - # brack_level = 0 - # for i, t in enumerate(ts): - # match t.spelling: - # case '[': - # brack_level += 1 - # case ']': - # brack_level -= 1 - # if brack_level == 0: - # return ts[i+1:], list(ts[1:i-1]) - - # return ts, None - - # def consume_braced_block(ts: List[ci.Token]): - # if not ts or ts[0].spelling != "{": - # return ts, None - - # brack_stack = [] - - # for i, t in enumerate(ts): - # match t.kind: - # case tk.PUNCTUATION: - # match t.spelling: - # case '(' | '[' | '{': - # brack_stack.append(t) - # case ')' | ']' | '}': - # if brack_stack[-1].spelling == BRACK_MAP[t.spelling]: - # brack_stack.pop() - # if len(brack_stack) == 0: - # return ts[i+1:], list(ts[:i]) - # else: - # raise ValueError( - # f"Invalid brackets: {pt(brack_stack)}, {t.spelling}") - # return ts, None - - # def consume_lambda_def(ts: List[ci.Token]): - # ts, entry = consume_lambda_entry(ts) - # ts, args = consume_args(ts) - # ts, body = consume_braced_block(ts) - # return ts, body - - # def consume_callback_symbol(ts: List[ci.Token]): - # lambda_body = None - # if ts and ts[0].spelling == "std": - # ts, identifier, gen, args = consume_function_call(ts) - # if not args: - # raise ValueError("Empty arg list") - # if args[0][0].spelling != "&": - # raise NotImplementedError(pt(args)) - # callback_sym = args[0][1:] - # elif ts and ts[0].spelling == "[": - # ts, lambda_body = consume_lambda_def(ts) - # callback_sym = None - # else: - # print( - # f"Error: {pt(ts[:30])} is a callback symbol of unknown structure") - # callback_sym = None - - # return callback_sym, lambda_body - - # def get_mappings(tu: ci.TranslationUnit): - # cb_sym_to_identifiers_map = {} - - # ts_all = list(tu.cursor.get_tokens()) - # for i, t in enumerate(ts_all): - # if t.kind == ci.TokenKind.IDENTIFIER and t.spelling == "create_subscription": - # ts2, identifier, gen, args = consume_function_call(ts_all[i:]) - # cb = args[2] - # cb_sym, body = consume_callback_symbol(cb) - # cb_sym_key = pt(cb_sym) if cb_sym is not None else pt(cb) - # print(cb_sym_key) - # if body is None: - # body = find_body(tu.cursor, cb_sym) - # if body is not None: - # #print(" ",pt(body)) - # identifiers, text_lines = get_identifiers_with_lines(body) - # for l in text_lines: - # print(l.rstrip()) - - # if cb_sym_key not in cb_sym_to_identifiers_map: - # cb_sym_to_identifiers_map[cb_sym_key] = {'identifiers': list( - # map(pt, identifiers)), 'body_lines': text_lines} - # else: - # raise ValueError( - # f"Multiple create_subscription with same handler: {cb_sym_key}") - # else: - # cb_sym_to_identifiers_map[cb_sym_key] = { - # 'error': "No function body found"} - # #raise ValueError(f"No function body found for {cb_sym_key}") - # return cb_sym_to_identifiers_map diff --git a/clang-digger.ipynb b/clang-digger.ipynb deleted file mode 100644 index 668cd2e..0000000 --- a/clang-digger.ipynb +++ /dev/null @@ -1,479 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Defaulting to user installation because normal site-packages is not writeable\n", - "Requirement already satisfied: libclang in /home/max/.local/lib/python3.10/site-packages (14.0.1)\n", - "Note: you may need to restart the kernel to use updated packages.\n" - ] - } - ], - "source": [ - "%pip install libclang" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": { - "collapsed": false, - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [], - "source": [ - "import glob\n", - "import json\n", - "import os\n", - "import pathlib\n", - "import re\n", - "from typing import Union, Iterator, List\n", - "\n", - "import clang.cindex as ci\n", - "from clang.cindex import TokenKind as tk\n", - "from clang.cindex import CursorKind as ck\n", - "\n", - "import ast_utils\n", - "\n", - "jj = os.path.join\n", - "\n", - "FS_ROOT = \"/\"\n", - "ROOT_DIR = jj(FS_ROOT, \"/home/max/projects/autoware/\")\n", - "\n", - "def pext(t: Union[ci.Token, ci.Cursor]):\n", - " e = t.extent\n", - " return f\"{e.start.line}:{e.start.column}-{e.end.line}:{e.end.column}\"\n", - "\n", - "def pt(tokens, join_str=''):\n", - " if tokens is None:\n", - " return \"None\"\n", - " return join_str.join(map(lambda t: t.spelling, tokens))\n", - "\n", - "if not os.path.exists(jj(ROOT_DIR, \"build/compile_commands.json\")):\n", - " print(\"Run\")\n", - " print(\" colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release -DCMAKE_EXPORT_COMPILE_COMMANDS=ON\")\n", - " print(\"to generate the files necessary to run this script.\")" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "collapsed": false, - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [], - "source": [ - "_arg_pattern = re.compile(r\"(?<=\\s)(?:-D\\s*\\S+|-I\\s*\\S+|-isystem\\s*\\S+|--?std\\s*\\S+)(?=\\s)\")\n", - "\n", - "def _extract_args(compile_command):\n", - " segments = _arg_pattern.findall(compile_command)\n", - " segments = [part.strip() for seg in segments for part in seg.split(\" \")]\n", - " return segments\n", - "\n", - "with open(jj(ROOT_DIR, \"build/compile_commands.json\"), \"r\") as f:\n", - " compile_commands = json.load(f)\n", - "\n", - "compile_commands = {cmd['file']: cmd['command'] for cmd in compile_commands}\n", - "compile_commands = {k: _extract_args(v) for k, v in compile_commands.items()}" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": false, - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [], - "source": [] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": { - "collapsed": false, - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "['{ transform_listener_ = std :: make_shared < tier4_autoware_utils :: TransformListener > ( this ) ; // get parameter update_hz_ = this -> declare_parameter < double > ( \"update_hz\" , 10.0 ) ; covariance_ = this -> declare_parameter < double > ( \"initial_covariance\" , 0.05 ) ; velocity_min_threshold_ = this -> declare_parameter < double > ( \"velocity_min_threshold\" , 0.1 ) ; velocity_diff_threshold_ = this -> declare_parameter < double > ( \"velocity_diff_threshold\" , 0.556 ) ; pedal_diff_threshold_ = this -> declare_parameter < double > ( \"pedal_diff_threshold\" , 0.03 ) ; max_steer_threshold_ = this -> declare_parameter < double > ( \"max_steer_threshold\" , 0.2 ) ; max_pitch_threshold_ = this -> declare_parameter < double > ( \"max_pitch_threshold\" , 0.02 ) ; max_jerk_threshold_ = this -> declare_parameter < double > ( \"max_jerk_threshold\" , 0.7 ) ; pedal_velocity_thresh_ = this -> declare_parameter < double > ( \"pedal_velocity_thresh\" , 0.15 ) ; map_update_gain_ = this -> declare_parameter < double > ( \"map_update_gain\" , 0.02 ) ; max_accel_ = this -> declare_parameter < double > ( \"max_accel\" , 5.0 ) ; min_accel_ = this -> declare_parameter < double > ( \"min_accel\" , - 5.0 ) ; pedal_to_accel_delay_ = this -> declare_parameter < double > ( \"pedal_to_accel_delay\" , 0.3 ) ; max_data_count_ = this -> declare_parameter < int > ( \"max_data_count\" , 200 ) ; pedal_accel_graph_output_ = this -> declare_parameter < bool > ( \"pedal_accel_graph_output\" , false ) ; progress_file_output_ = this -> declare_parameter < bool > ( \"progress_file_output\" , false ) ; const auto get_pitch_method_str = this -> declare_parameter < std :: string > ( \"get_pitch_method\" , std :: string ( \"tf\" ) ) ; if ( get_pitch_method_str == std :: string ( \"tf\" ) ) { get_pitch_method_ = GET_PITCH_METHOD :: TF ; } else if ( get_pitch_method_str == std :: string ( \"none\" ) ) { get_pitch_method_ = GET_PITCH_METHOD :: NONE ; } else { RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"update_method_\" << \" is wrong. (available method: tf, file, none\" ) ; return ; } update_suggest_thresh_ = this -> declare_parameter < double > ( \"update_suggest_thresh\" , 0.7 ) ; csv_calibrated_map_dir_ = this -> declare_parameter < std :: string > ( \"csv_calibrated_map_dir\" , std :: string ( \"\" ) ) ; output_accel_file_ = csv_calibrated_map_dir_ + \"/accel_map.csv\" ; output_brake_file_ = csv_calibrated_map_dir_ + \"/brake_map.csv\" ; const std :: string update_method_str = this -> declare_parameter < std :: string > ( \"update_method\" , std :: string ( \"update_offset_each_cell\" ) ) ; if ( update_method_str == std :: string ( \"update_offset_each_cell\" ) ) { update_method_ = UPDATE_METHOD :: UPDATE_OFFSET_EACH_CELL ; } else if ( update_method_str == std :: string ( \"update_offset_total\" ) ) { update_method_ = UPDATE_METHOD :: UPDATE_OFFSET_TOTAL ; } else { RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"update_method\" << \" is wrong. (available method: update_offset_each_cell, update_offset_total\" ) ; return ; } // initializer // QoS setup static constexpr std :: size_t queue_size = 1 ; rclcpp :: QoS durable_qos ( queue_size ) ; // Publisher for checkUpdateSuggest calibration_status_pub_ = create_publisher < tier4_external_api_msgs :: msg :: CalibrationStatus > ( \"/accel_brake_map_calibrator/output/calibration_status\" , durable_qos ) ; /* Diagnostic Updater */ updater_ptr_ = std :: make_shared < diagnostic_updater :: Updater > ( this , 1.0 / update_hz_ ) ; updater_ptr_ -> setHardwareID ( \"accel_brake_map_calibrator\" ) ; updater_ptr_ -> add ( \"accel_brake_map_calibrator\" , this , & AccelBrakeMapCalibrator :: checkUpdateSuggest ) ; { csv_default_map_dir_ = this -> declare_parameter < std :: string > ( \"csv_default_map_dir\" , std :: string ( \"\" ) ) ; std :: string csv_path_accel_map = csv_default_map_dir_ + \"/accel_map.csv\" ; std :: string csv_path_brake_map = csv_default_map_dir_ + \"/brake_map.csv\" ; if ( ! accel_map_ . readAccelMapFromCSV ( csv_path_accel_map ) || ! new_accel_map_ . readAccelMapFromCSV ( csv_path_accel_map ) ) { is_default_map_ = false ; RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"Cannot read accelmap. csv path = \" << csv_path_accel_map . c_str ( ) << \". stop calculation.\" ) ; return ; } if ( ! brake_map_ . readBrakeMapFromCSV ( csv_path_brake_map ) || ! new_brake_map_ . readBrakeMapFromCSV ( csv_path_brake_map ) ) { is_default_map_ = false ; RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"Cannot read brakemap. csv path = \" << csv_path_brake_map . c_str ( ) << \". stop calculation.\" ) ; return ; } } std :: string output_log_file = this -> declare_parameter < std :: string > ( \"output_log_file\" , std :: string ( \"\" ) ) ; output_log_ . open ( output_log_file ) ; addIndexToCSV ( & output_log_ ) ; debug_values_ . data . resize ( num_debug_values_ ) ; // input map info accel_map_value_ = accel_map_ . getAccelMap ( ) ; brake_map_value_ = brake_map_ . getBrakeMap ( ) ; accel_vel_index_ = accel_map_ . getVelIdx ( ) ; brake_vel_index_ = brake_map_ . getVelIdx ( ) ; accel_pedal_index_ = accel_map_ . getThrottleIdx ( ) ; brake_pedal_index_ = brake_map_ . getBrakeIdx ( ) ; update_accel_map_value_ . resize ( ( accel_map_value_ . size ( ) ) ) ; update_brake_map_value_ . resize ( ( brake_map_value_ . size ( ) ) ) ; for ( auto & m : update_accel_map_value_ ) { m . resize ( accel_map_value_ . at ( 0 ) . size ( ) ) ; } for ( auto & m : update_brake_map_value_ ) { m . resize ( brake_map_value_ . at ( 0 ) . size ( ) ) ; } map_value_data_ . resize ( accel_map_value_ . size ( ) + brake_map_value_ . size ( ) - 1 ) ; for ( auto & m : map_value_data_ ) { m . resize ( accel_map_value_ . at ( 0 ) . size ( ) ) ; } std :: copy ( accel_map_value_ . begin ( ) , accel_map_value_ . end ( ) , update_accel_map_value_ . begin ( ) ) ; std :: copy ( brake_map_value_ . begin ( ) , brake_map_value_ . end ( ) , update_brake_map_value_ . begin ( ) ) ; // publisher update_suggest_pub_ = create_publisher < std_msgs :: msg :: Bool > ( \"~/output/update_suggest\" , durable_qos ) ; original_map_occ_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/original_occ_map\" , durable_qos ) ; update_map_occ_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/update_occ_map\" , durable_qos ) ; data_ave_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_average_occ_map\" , durable_qos ) ; data_std_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_std_dev_occ_map\" , durable_qos ) ; data_count_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_count_occ_map\" , durable_qos ) ; data_count_with_self_pose_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_count_self_pose_occ_map\" , durable_qos ) ; index_pub_ = create_publisher < visualization_msgs :: msg :: MarkerArray > ( \"/accel_brake_map_calibrator/debug/occ_index\" , durable_qos ) ; original_map_raw_pub_ = create_publisher < std_msgs :: msg :: Float32MultiArray > ( \"/accel_brake_map_calibrator/debug/original_raw_map\" , durable_qos ) ; update_map_raw_pub_ = create_publisher < std_msgs :: msg :: Float32MultiArray > ( \"/accel_brake_map_calibrator/output/update_raw_map\" , durable_qos ) ; debug_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32MultiArrayStamped > ( \"/accel_brake_map_calibrator/output/debug_values\" , durable_qos ) ; current_map_error_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32Stamped > ( \"/accel_brake_map_calibrator/output/current_map_error\" , durable_qos ) ; updated_map_error_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32Stamped > ( \"/accel_brake_map_calibrator/output/updated_map_error\" , durable_qos ) ; map_error_ratio_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32Stamped > ( \"/accel_brake_map_calibrator/output/map_error_ratio\" , durable_qos ) ; // subscriber using std :: placeholders :: _1 ; using std :: placeholders :: _2 ; using std :: placeholders :: _3 ; velocity_sub_ = create_subscription < autoware_auto_vehicle_msgs :: msg :: VelocityReport > ( \"~/input/velocity\" , queue_size , std :: bind ( & AccelBrakeMapCalibrator :: callbackVelocity , this , _1 ) ) ; steer_sub_ = create_subscription < autoware_auto_vehicle_msgs :: msg :: SteeringReport > ( \"~/input/steer\" , queue_size , std :: bind ( & AccelBrakeMapCalibrator :: callbackSteer , this , _1 ) ) ; actuation_status_sub_ = create_subscription < tier4_vehicle_msgs :: msg :: ActuationStatusStamped > ( \"~/input/actuation_status\" , queue_size , std :: bind ( & AccelBrakeMapCalibrator :: callbackActuationStatus , this , _1 ) ) ; // Service update_map_dir_server_ = create_service < tier4_vehicle_msgs :: srv :: UpdateAccelBrakeMap > ( \"~/input/update_map_dir\" , std :: bind ( & AccelBrakeMapCalibrator :: callbackUpdateMapService , this , _1 , _2 , _3 ) ) ; // timer initTimer ( 1.0 / update_hz_ ) ; initOutputCSVTimer ( 30.0 ) ; }', '{ transform_listener_ = std :: make_shared < tier4_autoware_utils :: TransformListener > ( this ) ; // get parameter update_hz_ = this -> declare_parameter < double > ( \"update_hz\" , 10.0 ) ; covariance_ = this -> declare_parameter < double > ( \"initial_covariance\" , 0.05 ) ; velocity_min_threshold_ = this -> declare_parameter < double > ( \"velocity_min_threshold\" , 0.1 ) ; velocity_diff_threshold_ = this -> declare_parameter < double > ( \"velocity_diff_threshold\" , 0.556 ) ; pedal_diff_threshold_ = this -> declare_parameter < double > ( \"pedal_diff_threshold\" , 0.03 ) ; max_steer_threshold_ = this -> declare_parameter < double > ( \"max_steer_threshold\" , 0.2 ) ; max_pitch_threshold_ = this -> declare_parameter < double > ( \"max_pitch_threshold\" , 0.02 ) ; max_jerk_threshold_ = this -> declare_parameter < double > ( \"max_jerk_threshold\" , 0.7 ) ; pedal_velocity_thresh_ = this -> declare_parameter < double > ( \"pedal_velocity_thresh\" , 0.15 ) ; map_update_gain_ = this -> declare_parameter < double > ( \"map_update_gain\" , 0.02 ) ; max_accel_ = this -> declare_parameter < double > ( \"max_accel\" , 5.0 ) ; min_accel_ = this -> declare_parameter < double > ( \"min_accel\" , - 5.0 ) ; pedal_to_accel_delay_ = this -> declare_parameter < double > ( \"pedal_to_accel_delay\" , 0.3 ) ; max_data_count_ = this -> declare_parameter < int > ( \"max_data_count\" , 200 ) ; pedal_accel_graph_output_ = this -> declare_parameter < bool > ( \"pedal_accel_graph_output\" , false ) ; progress_file_output_ = this -> declare_parameter < bool > ( \"progress_file_output\" , false ) ; const auto get_pitch_method_str = this -> declare_parameter < std :: string > ( \"get_pitch_method\" , std :: string ( \"tf\" ) ) ; if ( get_pitch_method_str == std :: string ( \"tf\" ) ) { get_pitch_method_ = GET_PITCH_METHOD :: TF ; } else if ( get_pitch_method_str == std :: string ( \"none\" ) ) { get_pitch_method_ = GET_PITCH_METHOD :: NONE ; } else { RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"update_method_\" << \" is wrong. (available method: tf, file, none\" ) ; return ; } update_suggest_thresh_ = this -> declare_parameter < double > ( \"update_suggest_thresh\" , 0.7 ) ; csv_calibrated_map_dir_ = this -> declare_parameter < std :: string > ( \"csv_calibrated_map_dir\" , std :: string ( \"\" ) ) ; output_accel_file_ = csv_calibrated_map_dir_ + \"/accel_map.csv\" ; output_brake_file_ = csv_calibrated_map_dir_ + \"/brake_map.csv\" ; const std :: string update_method_str = this -> declare_parameter < std :: string > ( \"update_method\" , std :: string ( \"update_offset_each_cell\" ) ) ; if ( update_method_str == std :: string ( \"update_offset_each_cell\" ) ) { update_method_ = UPDATE_METHOD :: UPDATE_OFFSET_EACH_CELL ; } else if ( update_method_str == std :: string ( \"update_offset_total\" ) ) { update_method_ = UPDATE_METHOD :: UPDATE_OFFSET_TOTAL ; } else { RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"update_method\" << \" is wrong. (available method: update_offset_each_cell, update_offset_total\" ) ; return ; } // initializer // QoS setup static constexpr std :: size_t queue_size = 1 ; rclcpp :: QoS durable_qos ( queue_size ) ; // Publisher for checkUpdateSuggest calibration_status_pub_ = create_publisher < tier4_external_api_msgs :: msg :: CalibrationStatus > ( \"/accel_brake_map_calibrator/output/calibration_status\" , durable_qos ) ; /* Diagnostic Updater */ updater_ptr_ = std :: make_shared < diagnostic_updater :: Updater > ( this , 1.0 / update_hz_ ) ; updater_ptr_ -> setHardwareID ( \"accel_brake_map_calibrator\" ) ; updater_ptr_ -> add ( \"accel_brake_map_calibrator\" , this , & AccelBrakeMapCalibrator :: checkUpdateSuggest ) ; { csv_default_map_dir_ = this -> declare_parameter < std :: string > ( \"csv_default_map_dir\" , std :: string ( \"\" ) ) ; std :: string csv_path_accel_map = csv_default_map_dir_ + \"/accel_map.csv\" ; std :: string csv_path_brake_map = csv_default_map_dir_ + \"/brake_map.csv\" ; if ( ! accel_map_ . readAccelMapFromCSV ( csv_path_accel_map ) || ! new_accel_map_ . readAccelMapFromCSV ( csv_path_accel_map ) ) { is_default_map_ = false ; RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"Cannot read accelmap. csv path = \" << csv_path_accel_map . c_str ( ) << \". stop calculation.\" ) ; return ; } if ( ! brake_map_ . readBrakeMapFromCSV ( csv_path_brake_map ) || ! new_brake_map_ . readBrakeMapFromCSV ( csv_path_brake_map ) ) { is_default_map_ = false ; RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"Cannot read brakemap. csv path = \" << csv_path_brake_map . c_str ( ) << \". stop calculation.\" ) ; return ; } } std :: string output_log_file = this -> declare_parameter < std :: string > ( \"output_log_file\" , std :: string ( \"\" ) ) ; output_log_ . open ( output_log_file ) ; addIndexToCSV ( & output_log_ ) ; debug_values_ . data . resize ( num_debug_values_ ) ; // input map info accel_map_value_ = accel_map_ . getAccelMap ( ) ; brake_map_value_ = brake_map_ . getBrakeMap ( ) ; accel_vel_index_ = accel_map_ . getVelIdx ( ) ; brake_vel_index_ = brake_map_ . getVelIdx ( ) ; accel_pedal_index_ = accel_map_ . getThrottleIdx ( ) ; brake_pedal_index_ = brake_map_ . getBrakeIdx ( ) ; update_accel_map_value_ . resize ( ( accel_map_value_ . size ( ) ) ) ; update_brake_map_value_ . resize ( ( brake_map_value_ . size ( ) ) ) ; for ( auto & m : update_accel_map_value_ ) { m . resize ( accel_map_value_ . at ( 0 ) . size ( ) ) ; } for ( auto & m : update_brake_map_value_ ) { m . resize ( brake_map_value_ . at ( 0 ) . size ( ) ) ; } map_value_data_ . resize ( accel_map_value_ . size ( ) + brake_map_value_ . size ( ) - 1 ) ; for ( auto & m : map_value_data_ ) { m . resize ( accel_map_value_ . at ( 0 ) . size ( ) ) ; } std :: copy ( accel_map_value_ . begin ( ) , accel_map_value_ . end ( ) , update_accel_map_value_ . begin ( ) ) ; std :: copy ( brake_map_value_ . begin ( ) , brake_map_value_ . end ( ) , update_brake_map_value_ . begin ( ) ) ; // publisher update_suggest_pub_ = create_publisher < std_msgs :: msg :: Bool > ( \"~/output/update_suggest\" , durable_qos ) ; original_map_occ_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/original_occ_map\" , durable_qos ) ; update_map_occ_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/update_occ_map\" , durable_qos ) ; data_ave_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_average_occ_map\" , durable_qos ) ; data_std_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_std_dev_occ_map\" , durable_qos ) ; data_count_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_count_occ_map\" , durable_qos ) ; data_count_with_self_pose_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_count_self_pose_occ_map\" , durable_qos ) ; index_pub_ = create_publisher < visualization_msgs :: msg :: MarkerArray > ( \"/accel_brake_map_calibrator/debug/occ_index\" , durable_qos ) ; original_map_raw_pub_ = create_publisher < std_msgs :: msg :: Float32MultiArray > ( \"/accel_brake_map_calibrator/debug/original_raw_map\" , durable_qos ) ; update_map_raw_pub_ = create_publisher < std_msgs :: msg :: Float32MultiArray > ( \"/accel_brake_map_calibrator/output/update_raw_map\" , durable_qos ) ; debug_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32MultiArrayStamped > ( \"/accel_brake_map_calibrator/output/debug_values\" , durable_qos ) ; current_map_error_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32Stamped > ( \"/accel_brake_map_calibrator/output/current_map_error\" , durable_qos ) ; updated_map_error_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32Stamped > ( \"/accel_brake_map_calibrator/output/updated_map_error\" , durable_qos ) ; map_error_ratio_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32Stamped > ( \"/accel_brake_map_calibrator/output/map_error_ratio\" , durable_qos ) ; // subscriber using std :: placeholders :: _1 ; using std :: placeholders :: _2 ; using std :: placeholders :: _3 ; velocity_sub_ = create_subscription < autoware_auto_vehicle_msgs :: msg :: VelocityReport > ( \"~/input/velocity\" , queue_size , std :: bind ( & AccelBrakeMapCalibrator :: callbackVelocity , this , _1 ) ) ; steer_sub_ = create_subscription < autoware_auto_vehicle_msgs :: msg :: SteeringReport > ( \"~/input/steer\" , queue_size , std :: bind ( & AccelBrakeMapCalibrator :: callbackSteer , this , _1 ) ) ; actuation_status_sub_ = create_subscription < tier4_vehicle_msgs :: msg :: ActuationStatusStamped > ( \"~/input/actuation_status\" , queue_size , std :: bind ( & AccelBrakeMapCalibrator :: callbackActuationStatus , this , _1 ) ) ; // Service update_map_dir_server_ = create_service < tier4_vehicle_msgs :: srv :: UpdateAccelBrakeMap > ( \"~/input/update_map_dir\" , std :: bind ( & AccelBrakeMapCalibrator :: callbackUpdateMapService , this , _1 , _2 , _3 ) ) ; // timer initTimer ( 1.0 / update_hz_ ) ; initOutputCSVTimer ( 30.0 ) ; }', '{ transform_listener_ = std :: make_shared < tier4_autoware_utils :: TransformListener > ( this ) ; // get parameter update_hz_ = this -> declare_parameter < double > ( \"update_hz\" , 10.0 ) ; covariance_ = this -> declare_parameter < double > ( \"initial_covariance\" , 0.05 ) ; velocity_min_threshold_ = this -> declare_parameter < double > ( \"velocity_min_threshold\" , 0.1 ) ; velocity_diff_threshold_ = this -> declare_parameter < double > ( \"velocity_diff_threshold\" , 0.556 ) ; pedal_diff_threshold_ = this -> declare_parameter < double > ( \"pedal_diff_threshold\" , 0.03 ) ; max_steer_threshold_ = this -> declare_parameter < double > ( \"max_steer_threshold\" , 0.2 ) ; max_pitch_threshold_ = this -> declare_parameter < double > ( \"max_pitch_threshold\" , 0.02 ) ; max_jerk_threshold_ = this -> declare_parameter < double > ( \"max_jerk_threshold\" , 0.7 ) ; pedal_velocity_thresh_ = this -> declare_parameter < double > ( \"pedal_velocity_thresh\" , 0.15 ) ; map_update_gain_ = this -> declare_parameter < double > ( \"map_update_gain\" , 0.02 ) ; max_accel_ = this -> declare_parameter < double > ( \"max_accel\" , 5.0 ) ; min_accel_ = this -> declare_parameter < double > ( \"min_accel\" , - 5.0 ) ; pedal_to_accel_delay_ = this -> declare_parameter < double > ( \"pedal_to_accel_delay\" , 0.3 ) ; max_data_count_ = this -> declare_parameter < int > ( \"max_data_count\" , 200 ) ; pedal_accel_graph_output_ = this -> declare_parameter < bool > ( \"pedal_accel_graph_output\" , false ) ; progress_file_output_ = this -> declare_parameter < bool > ( \"progress_file_output\" , false ) ; const auto get_pitch_method_str = this -> declare_parameter < std :: string > ( \"get_pitch_method\" , std :: string ( \"tf\" ) ) ; if ( get_pitch_method_str == std :: string ( \"tf\" ) ) { get_pitch_method_ = GET_PITCH_METHOD :: TF ; } else if ( get_pitch_method_str == std :: string ( \"none\" ) ) { get_pitch_method_ = GET_PITCH_METHOD :: NONE ; } else { RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"update_method_\" << \" is wrong. (available method: tf, file, none\" ) ; return ; } update_suggest_thresh_ = this -> declare_parameter < double > ( \"update_suggest_thresh\" , 0.7 ) ; csv_calibrated_map_dir_ = this -> declare_parameter < std :: string > ( \"csv_calibrated_map_dir\" , std :: string ( \"\" ) ) ; output_accel_file_ = csv_calibrated_map_dir_ + \"/accel_map.csv\" ; output_brake_file_ = csv_calibrated_map_dir_ + \"/brake_map.csv\" ; const std :: string update_method_str = this -> declare_parameter < std :: string > ( \"update_method\" , std :: string ( \"update_offset_each_cell\" ) ) ; if ( update_method_str == std :: string ( \"update_offset_each_cell\" ) ) { update_method_ = UPDATE_METHOD :: UPDATE_OFFSET_EACH_CELL ; } else if ( update_method_str == std :: string ( \"update_offset_total\" ) ) { update_method_ = UPDATE_METHOD :: UPDATE_OFFSET_TOTAL ; } else { RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"update_method\" << \" is wrong. (available method: update_offset_each_cell, update_offset_total\" ) ; return ; } // initializer // QoS setup static constexpr std :: size_t queue_size = 1 ; rclcpp :: QoS durable_qos ( queue_size ) ; // Publisher for checkUpdateSuggest calibration_status_pub_ = create_publisher < tier4_external_api_msgs :: msg :: CalibrationStatus > ( \"/accel_brake_map_calibrator/output/calibration_status\" , durable_qos ) ; /* Diagnostic Updater */ updater_ptr_ = std :: make_shared < diagnostic_updater :: Updater > ( this , 1.0 / update_hz_ ) ; updater_ptr_ -> setHardwareID ( \"accel_brake_map_calibrator\" ) ; updater_ptr_ -> add ( \"accel_brake_map_calibrator\" , this , & AccelBrakeMapCalibrator :: checkUpdateSuggest ) ; { csv_default_map_dir_ = this -> declare_parameter < std :: string > ( \"csv_default_map_dir\" , std :: string ( \"\" ) ) ; std :: string csv_path_accel_map = csv_default_map_dir_ + \"/accel_map.csv\" ; std :: string csv_path_brake_map = csv_default_map_dir_ + \"/brake_map.csv\" ; if ( ! accel_map_ . readAccelMapFromCSV ( csv_path_accel_map ) || ! new_accel_map_ . readAccelMapFromCSV ( csv_path_accel_map ) ) { is_default_map_ = false ; RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"Cannot read accelmap. csv path = \" << csv_path_accel_map . c_str ( ) << \". stop calculation.\" ) ; return ; } if ( ! brake_map_ . readBrakeMapFromCSV ( csv_path_brake_map ) || ! new_brake_map_ . readBrakeMapFromCSV ( csv_path_brake_map ) ) { is_default_map_ = false ; RCLCPP_ERROR_STREAM ( rclcpp :: get_logger ( \"accel_brake_map_calibrator\" ) , \"Cannot read brakemap. csv path = \" << csv_path_brake_map . c_str ( ) << \". stop calculation.\" ) ; return ; } } std :: string output_log_file = this -> declare_parameter < std :: string > ( \"output_log_file\" , std :: string ( \"\" ) ) ; output_log_ . open ( output_log_file ) ; addIndexToCSV ( & output_log_ ) ; debug_values_ . data . resize ( num_debug_values_ ) ; // input map info accel_map_value_ = accel_map_ . getAccelMap ( ) ; brake_map_value_ = brake_map_ . getBrakeMap ( ) ; accel_vel_index_ = accel_map_ . getVelIdx ( ) ; brake_vel_index_ = brake_map_ . getVelIdx ( ) ; accel_pedal_index_ = accel_map_ . getThrottleIdx ( ) ; brake_pedal_index_ = brake_map_ . getBrakeIdx ( ) ; update_accel_map_value_ . resize ( ( accel_map_value_ . size ( ) ) ) ; update_brake_map_value_ . resize ( ( brake_map_value_ . size ( ) ) ) ; for ( auto & m : update_accel_map_value_ ) { m . resize ( accel_map_value_ . at ( 0 ) . size ( ) ) ; } for ( auto & m : update_brake_map_value_ ) { m . resize ( brake_map_value_ . at ( 0 ) . size ( ) ) ; } map_value_data_ . resize ( accel_map_value_ . size ( ) + brake_map_value_ . size ( ) - 1 ) ; for ( auto & m : map_value_data_ ) { m . resize ( accel_map_value_ . at ( 0 ) . size ( ) ) ; } std :: copy ( accel_map_value_ . begin ( ) , accel_map_value_ . end ( ) , update_accel_map_value_ . begin ( ) ) ; std :: copy ( brake_map_value_ . begin ( ) , brake_map_value_ . end ( ) , update_brake_map_value_ . begin ( ) ) ; // publisher update_suggest_pub_ = create_publisher < std_msgs :: msg :: Bool > ( \"~/output/update_suggest\" , durable_qos ) ; original_map_occ_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/original_occ_map\" , durable_qos ) ; update_map_occ_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/update_occ_map\" , durable_qos ) ; data_ave_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_average_occ_map\" , durable_qos ) ; data_std_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_std_dev_occ_map\" , durable_qos ) ; data_count_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_count_occ_map\" , durable_qos ) ; data_count_with_self_pose_pub_ = create_publisher < nav_msgs :: msg :: OccupancyGrid > ( \"/accel_brake_map_calibrator/debug/data_count_self_pose_occ_map\" , durable_qos ) ; index_pub_ = create_publisher < visualization_msgs :: msg :: MarkerArray > ( \"/accel_brake_map_calibrator/debug/occ_index\" , durable_qos ) ; original_map_raw_pub_ = create_publisher < std_msgs :: msg :: Float32MultiArray > ( \"/accel_brake_map_calibrator/debug/original_raw_map\" , durable_qos ) ; update_map_raw_pub_ = create_publisher < std_msgs :: msg :: Float32MultiArray > ( \"/accel_brake_map_calibrator/output/update_raw_map\" , durable_qos ) ; debug_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32MultiArrayStamped > ( \"/accel_brake_map_calibrator/output/debug_values\" , durable_qos ) ; current_map_error_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32Stamped > ( \"/accel_brake_map_calibrator/output/current_map_error\" , durable_qos ) ; updated_map_error_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32Stamped > ( \"/accel_brake_map_calibrator/output/updated_map_error\" , durable_qos ) ; map_error_ratio_pub_ = create_publisher < tier4_debug_msgs :: msg :: Float32Stamped > ( \"/accel_brake_map_calibrator/output/map_error_ratio\" , durable_qos ) ; // subscriber using std :: placeholders :: _1 ; using std :: placeholders :: _2 ; using std :: placeholders :: _3 ; velocity_sub_ = create_subscription < autoware_auto_vehicle_msgs :: msg :: VelocityReport > ( \"~/input/velocity\" , queue_size , std :: bind ( & AccelBrakeMapCalibrator :: callbackVelocity , this , _1 ) ) ; steer_sub_ = create_subscription < autoware_auto_vehicle_msgs :: msg :: SteeringReport > ( \"~/input/steer\" , queue_size , std :: bind ( & AccelBrakeMapCalibrator :: callbackSteer , this , _1 ) ) ; actuation_status_sub_ = create_subscription < tier4_vehicle_msgs :: msg :: ActuationStatusStamped > ( \"~/input/actuation_status\" , queue_size , std :: bind ( & AccelBrakeMapCalibrator :: callbackActuationStatus , this , _1 ) ) ; // Service update_map_dir_server_ = create_service < tier4_vehicle_msgs :: srv :: UpdateAccelBrakeMap > ( \"~/input/update_map_dir\" , std :: bind ( & AccelBrakeMapCalibrator :: callbackUpdateMapService , this , _1 , _2 , _3 ) ) ; // timer initTimer ( 1.0 / update_hz_ ) ; initOutputCSVTimer ( 30.0 ) ; }']\n", - "[]\n", - "[]\n", - "['{ using std :: placeholders :: _1 ; using std :: placeholders :: _2 ; using std :: placeholders :: _3 ; // Parameter update_rate_ = this -> declare_parameter ( \"update_rate\" , 10.0 ) ; disengage_on_route_ = this -> declare_parameter ( \"disengage_on_route\" , true ) ; disengage_on_goal_ = this -> declare_parameter ( \"disengage_on_goal\" , true ) ; // Parameter for StateMachine state_param_ . th_arrived_distance_m = this -> declare_parameter ( \"th_arrived_distance_m\" , 1.0 ) ; const auto th_arrived_angle_deg = this -> declare_parameter ( \"th_arrived_angle_deg\" , 45.0 ) ; state_param_ . th_arrived_angle = tier4_autoware_utils :: deg2rad ( th_arrived_angle_deg ) ; state_param_ . th_stopped_time_sec = this -> declare_parameter ( \"th_stopped_time_sec\" , 1.0 ) ; state_param_ . th_stopped_velocity_mps = this -> declare_parameter ( \"th_stopped_velocity_mps\" , 0.01 ) ; // State Machine state_machine_ = std :: make_shared < StateMachine > ( state_param_ ) ; // Config topic_configs_ = getConfigs < TopicConfig > ( this -> get_node_parameters_interface ( ) , \"topic_configs\" ) ; tf_configs_ = getConfigs < TfConfig > ( this -> get_node_parameters_interface ( ) , \"tf_configs\" ) ; // Callback Groups callback_group_subscribers_ = this -> create_callback_group ( rclcpp :: CallbackGroupType :: MutuallyExclusive ) ; callback_group_services_ = this -> create_callback_group ( rclcpp :: CallbackGroupType :: MutuallyExclusive ) ; auto subscriber_option = rclcpp :: SubscriptionOptions ( ) ; subscriber_option . callback_group = callback_group_subscribers_ ; // Topic Callback for ( const auto & topic_config : topic_configs_ ) { registerTopicCallback ( topic_config . name , topic_config . type , topic_config . transient_local , topic_config . best_effort ) ; } // Subscriber sub_autoware_engage_ = this -> create_subscription < autoware_auto_vehicle_msgs :: msg :: Engage > ( \"input/autoware_engage\" , 1 , std :: bind ( & AutowareStateMonitorNode :: onAutowareEngage , this , _1 ) , subscriber_option ) ; sub_control_mode_ = this -> create_subscription < autoware_auto_vehicle_msgs :: msg :: ControlModeReport > ( \"input/control_mode\" , 1 , std :: bind ( & AutowareStateMonitorNode :: onVehicleControlMode , this , _1 ) , subscriber_option ) ; sub_map_ = create_subscription < autoware_auto_mapping_msgs :: msg :: HADMapBin > ( \"input/vector_map\" , rclcpp :: QoS { 1 } . transient_local ( ) , std :: bind ( & AutowareStateMonitorNode :: onMap , this , _1 ) , subscriber_option ) ; sub_route_ = this -> create_subscription < autoware_auto_planning_msgs :: msg :: HADMapRoute > ( \"input/route\" , rclcpp :: QoS { 1 } . transient_local ( ) , std :: bind ( & AutowareStateMonitorNode :: onRoute , this , _1 ) , subscriber_option ) ; sub_odom_ = this -> create_subscription < nav_msgs :: msg :: Odometry > ( \"input/odometry\" , 100 , std :: bind ( & AutowareStateMonitorNode :: onOdometry , this , _1 ) , subscriber_option ) ; // Service srv_shutdown_ = this -> create_service < std_srvs :: srv :: Trigger > ( \"service/shutdown\" , std :: bind ( & AutowareStateMonitorNode :: onShutdownService , this , _1 , _2 , _3 ) , rmw_qos_profile_services_default , callback_group_services_ ) ; srv_reset_route_ = this -> create_service < std_srvs :: srv :: Trigger > ( \"service/reset_route\" , std :: bind ( & AutowareStateMonitorNode :: onResetRouteService , this , _1 , _2 , _3 ) , rmw_qos_profile_services_default , callback_group_services_ ) ; // Publisher pub_autoware_state_ = this -> create_publisher < autoware_auto_system_msgs :: msg :: AutowareState > ( \"output/autoware_state\" , 1 ) ; pub_autoware_engage_ = this -> create_publisher < autoware_auto_vehicle_msgs :: msg :: Engage > ( \"output/autoware_engage\" , 1 ) ; // Diagnostic Updater setupDiagnosticUpdater ( ) ; // Wait for first topics std :: this_thread :: sleep_for ( std :: chrono :: milliseconds ( 1000 ) ) ; // Timer const auto period_ns = rclcpp :: Rate ( update_rate_ ) . period ( ) ; timer_ = rclcpp :: create_timer ( this , get_clock ( ) , period_ns , std :: bind ( & AutowareStateMonitorNode :: onTimer , this ) , callback_group_subscribers_ ) ; }', '{ using std :: placeholders :: _1 ; using std :: placeholders :: _2 ; using std :: placeholders :: _3 ; // Parameter update_rate_ = this -> declare_parameter ( \"update_rate\" , 10.0 ) ; disengage_on_route_ = this -> declare_parameter ( \"disengage_on_route\" , true ) ; disengage_on_goal_ = this -> declare_parameter ( \"disengage_on_goal\" , true ) ; // Parameter for StateMachine state_param_ . th_arrived_distance_m = this -> declare_parameter ( \"th_arrived_distance_m\" , 1.0 ) ; const auto th_arrived_angle_deg = this -> declare_parameter ( \"th_arrived_angle_deg\" , 45.0 ) ; state_param_ . th_arrived_angle = tier4_autoware_utils :: deg2rad ( th_arrived_angle_deg ) ; state_param_ . th_stopped_time_sec = this -> declare_parameter ( \"th_stopped_time_sec\" , 1.0 ) ; state_param_ . th_stopped_velocity_mps = this -> declare_parameter ( \"th_stopped_velocity_mps\" , 0.01 ) ; // State Machine state_machine_ = std :: make_shared < StateMachine > ( state_param_ ) ; // Config topic_configs_ = getConfigs < TopicConfig > ( this -> get_node_parameters_interface ( ) , \"topic_configs\" ) ; tf_configs_ = getConfigs < TfConfig > ( this -> get_node_parameters_interface ( ) , \"tf_configs\" ) ; // Callback Groups callback_group_subscribers_ = this -> create_callback_group ( rclcpp :: CallbackGroupType :: MutuallyExclusive ) ; callback_group_services_ = this -> create_callback_group ( rclcpp :: CallbackGroupType :: MutuallyExclusive ) ; auto subscriber_option = rclcpp :: SubscriptionOptions ( ) ; subscriber_option . callback_group = callback_group_subscribers_ ; // Topic Callback for ( const auto & topic_config : topic_configs_ ) { registerTopicCallback ( topic_config . name , topic_config . type , topic_config . transient_local , topic_config . best_effort ) ; } // Subscriber sub_autoware_engage_ = this -> create_subscription < autoware_auto_vehicle_msgs :: msg :: Engage > ( \"input/autoware_engage\" , 1 , std :: bind ( & AutowareStateMonitorNode :: onAutowareEngage , this , _1 ) , subscriber_option ) ; sub_control_mode_ = this -> create_subscription < autoware_auto_vehicle_msgs :: msg :: ControlModeReport > ( \"input/control_mode\" , 1 , std :: bind ( & AutowareStateMonitorNode :: onVehicleControlMode , this , _1 ) , subscriber_option ) ; sub_map_ = create_subscription < autoware_auto_mapping_msgs :: msg :: HADMapBin > ( \"input/vector_map\" , rclcpp :: QoS { 1 } . transient_local ( ) , std :: bind ( & AutowareStateMonitorNode :: onMap , this , _1 ) , subscriber_option ) ; sub_route_ = this -> create_subscription < autoware_auto_planning_msgs :: msg :: HADMapRoute > ( \"input/route\" , rclcpp :: QoS { 1 } . transient_local ( ) , std :: bind ( & AutowareStateMonitorNode :: onRoute , this , _1 ) , subscriber_option ) ; sub_odom_ = this -> create_subscription < nav_msgs :: msg :: Odometry > ( \"input/odometry\" , 100 , std :: bind ( & AutowareStateMonitorNode :: onOdometry , this , _1 ) , subscriber_option ) ; // Service srv_shutdown_ = this -> create_service < std_srvs :: srv :: Trigger > ( \"service/shutdown\" , std :: bind ( & AutowareStateMonitorNode :: onShutdownService , this , _1 , _2 , _3 ) , rmw_qos_profile_services_default , callback_group_services_ ) ; srv_reset_route_ = this -> create_service < std_srvs :: srv :: Trigger > ( \"service/reset_route\" , std :: bind ( & AutowareStateMonitorNode :: onResetRouteService , this , _1 , _2 , _3 ) , rmw_qos_profile_services_default , callback_group_services_ ) ; // Publisher pub_autoware_state_ = this -> create_publisher < autoware_auto_system_msgs :: msg :: AutowareState > ( \"output/autoware_state\" , 1 ) ; pub_autoware_engage_ = this -> create_publisher < autoware_auto_vehicle_msgs :: msg :: Engage > ( \"output/autoware_engage\" , 1 ) ; // Diagnostic Updater setupDiagnosticUpdater ( ) ; // Wait for first topics std :: this_thread :: sleep_for ( std :: chrono :: milliseconds ( 1000 ) ) ; // Timer const auto period_ns = rclcpp :: Rate ( update_rate_ ) . period ( ) ; timer_ = rclcpp :: create_timer ( this , get_clock ( ) , period_ns , std :: bind ( & AutowareStateMonitorNode :: onTimer , this ) , callback_group_subscribers_ ) ; }', '{ using std :: placeholders :: _1 ; using std :: placeholders :: _2 ; using std :: placeholders :: _3 ; // Parameter update_rate_ = this -> declare_parameter ( \"update_rate\" , 10.0 ) ; disengage_on_route_ = this -> declare_parameter ( \"disengage_on_route\" , true ) ; disengage_on_goal_ = this -> declare_parameter ( \"disengage_on_goal\" , true ) ; // Parameter for StateMachine state_param_ . th_arrived_distance_m = this -> declare_parameter ( \"th_arrived_distance_m\" , 1.0 ) ; const auto th_arrived_angle_deg = this -> declare_parameter ( \"th_arrived_angle_deg\" , 45.0 ) ; state_param_ . th_arrived_angle = tier4_autoware_utils :: deg2rad ( th_arrived_angle_deg ) ; state_param_ . th_stopped_time_sec = this -> declare_parameter ( \"th_stopped_time_sec\" , 1.0 ) ; state_param_ . th_stopped_velocity_mps = this -> declare_parameter ( \"th_stopped_velocity_mps\" , 0.01 ) ; // State Machine state_machine_ = std :: make_shared < StateMachine > ( state_param_ ) ; // Config topic_configs_ = getConfigs < TopicConfig > ( this -> get_node_parameters_interface ( ) , \"topic_configs\" ) ; tf_configs_ = getConfigs < TfConfig > ( this -> get_node_parameters_interface ( ) , \"tf_configs\" ) ; // Callback Groups callback_group_subscribers_ = this -> create_callback_group ( rclcpp :: CallbackGroupType :: MutuallyExclusive ) ; callback_group_services_ = this -> create_callback_group ( rclcpp :: CallbackGroupType :: MutuallyExclusive ) ; auto subscriber_option = rclcpp :: SubscriptionOptions ( ) ; subscriber_option . callback_group = callback_group_subscribers_ ; // Topic Callback for ( const auto & topic_config : topic_configs_ ) { registerTopicCallback ( topic_config . name , topic_config . type , topic_config . transient_local , topic_config . best_effort ) ; } // Subscriber sub_autoware_engage_ = this -> create_subscription < autoware_auto_vehicle_msgs :: msg :: Engage > ( \"input/autoware_engage\" , 1 , std :: bind ( & AutowareStateMonitorNode :: onAutowareEngage , this , _1 ) , subscriber_option ) ; sub_control_mode_ = this -> create_subscription < autoware_auto_vehicle_msgs :: msg :: ControlModeReport > ( \"input/control_mode\" , 1 , std :: bind ( & AutowareStateMonitorNode :: onVehicleControlMode , this , _1 ) , subscriber_option ) ; sub_map_ = create_subscription < autoware_auto_mapping_msgs :: msg :: HADMapBin > ( \"input/vector_map\" , rclcpp :: QoS { 1 } . transient_local ( ) , std :: bind ( & AutowareStateMonitorNode :: onMap , this , _1 ) , subscriber_option ) ; sub_route_ = this -> create_subscription < autoware_auto_planning_msgs :: msg :: HADMapRoute > ( \"input/route\" , rclcpp :: QoS { 1 } . transient_local ( ) , std :: bind ( & AutowareStateMonitorNode :: onRoute , this , _1 ) , subscriber_option ) ; sub_odom_ = this -> create_subscription < nav_msgs :: msg :: Odometry > ( \"input/odometry\" , 100 , std :: bind ( & AutowareStateMonitorNode :: onOdometry , this , _1 ) , subscriber_option ) ; // Service srv_shutdown_ = this -> create_service < std_srvs :: srv :: Trigger > ( \"service/shutdown\" , std :: bind ( & AutowareStateMonitorNode :: onShutdownService , this , _1 , _2 , _3 ) , rmw_qos_profile_services_default , callback_group_services_ ) ; srv_reset_route_ = this -> create_service < std_srvs :: srv :: Trigger > ( \"service/reset_route\" , std :: bind ( & AutowareStateMonitorNode :: onResetRouteService , this , _1 , _2 , _3 ) , rmw_qos_profile_services_default , callback_group_services_ ) ; // Publisher pub_autoware_state_ = this -> create_publisher < autoware_auto_system_msgs :: msg :: AutowareState > ( \"output/autoware_state\" , 1 ) ; pub_autoware_engage_ = this -> create_publisher < autoware_auto_vehicle_msgs :: msg :: Engage > ( \"output/autoware_engage\" , 1 ) ; // Diagnostic Updater setupDiagnosticUpdater ( ) ; // Wait for first topics std :: this_thread :: sleep_for ( std :: chrono :: milliseconds ( 1000 ) ) ; // Timer const auto period_ns = rclcpp :: Rate ( update_rate_ ) . period ( ) ; timer_ = rclcpp :: create_timer ( this , get_clock ( ) , period_ns , std :: bind ( & AutowareStateMonitorNode :: onTimer , this ) , callback_group_subscribers_ ) ; }', '{ using std :: placeholders :: _1 ; using std :: placeholders :: _2 ; using std :: placeholders :: _3 ; // Parameter update_rate_ = this -> declare_parameter ( \"update_rate\" , 10.0 ) ; disengage_on_route_ = this -> declare_parameter ( \"disengage_on_route\" , true ) ; disengage_on_goal_ = this -> declare_parameter ( \"disengage_on_goal\" , true ) ; // Parameter for StateMachine state_param_ . th_arrived_distance_m = this -> declare_parameter ( \"th_arrived_distance_m\" , 1.0 ) ; const auto th_arrived_angle_deg = this -> declare_parameter ( \"th_arrived_angle_deg\" , 45.0 ) ; state_param_ . th_arrived_angle = tier4_autoware_utils :: deg2rad ( th_arrived_angle_deg ) ; state_param_ . th_stopped_time_sec = this -> declare_parameter ( \"th_stopped_time_sec\" , 1.0 ) ; state_param_ . th_stopped_velocity_mps = this -> declare_parameter ( \"th_stopped_velocity_mps\" , 0.01 ) ; // State Machine state_machine_ = std :: make_shared < StateMachine > ( state_param_ ) ; // Config topic_configs_ = getConfigs < TopicConfig > ( this -> get_node_parameters_interface ( ) , \"topic_configs\" ) ; tf_configs_ = getConfigs < TfConfig > ( this -> get_node_parameters_interface ( ) , \"tf_configs\" ) ; // Callback Groups callback_group_subscribers_ = this -> create_callback_group ( rclcpp :: CallbackGroupType :: MutuallyExclusive ) ; callback_group_services_ = this -> create_callback_group ( rclcpp :: CallbackGroupType :: MutuallyExclusive ) ; auto subscriber_option = rclcpp :: SubscriptionOptions ( ) ; subscriber_option . callback_group = callback_group_subscribers_ ; // Topic Callback for ( const auto & topic_config : topic_configs_ ) { registerTopicCallback ( topic_config . name , topic_config . type , topic_config . transient_local , topic_config . best_effort ) ; } // Subscriber sub_autoware_engage_ = this -> create_subscription < autoware_auto_vehicle_msgs :: msg :: Engage > ( \"input/autoware_engage\" , 1 , std :: bind ( & AutowareStateMonitorNode :: onAutowareEngage , this , _1 ) , subscriber_option ) ; sub_control_mode_ = this -> create_subscription < autoware_auto_vehicle_msgs :: msg :: ControlModeReport > ( \"input/control_mode\" , 1 , std :: bind ( & AutowareStateMonitorNode :: onVehicleControlMode , this , _1 ) , subscriber_option ) ; sub_map_ = create_subscription < autoware_auto_mapping_msgs :: msg :: HADMapBin > ( \"input/vector_map\" , rclcpp :: QoS { 1 } . transient_local ( ) , std :: bind ( & AutowareStateMonitorNode :: onMap , this , _1 ) , subscriber_option ) ; sub_route_ = this -> create_subscription < autoware_auto_planning_msgs :: msg :: HADMapRoute > ( \"input/route\" , rclcpp :: QoS { 1 } . transient_local ( ) , std :: bind ( & AutowareStateMonitorNode :: onRoute , this , _1 ) , subscriber_option ) ; sub_odom_ = this -> create_subscription < nav_msgs :: msg :: Odometry > ( \"input/odometry\" , 100 , std :: bind ( & AutowareStateMonitorNode :: onOdometry , this , _1 ) , subscriber_option ) ; // Service srv_shutdown_ = this -> create_service < std_srvs :: srv :: Trigger > ( \"service/shutdown\" , std :: bind ( & AutowareStateMonitorNode :: onShutdownService , this , _1 , _2 , _3 ) , rmw_qos_profile_services_default , callback_group_services_ ) ; srv_reset_route_ = this -> create_service < std_srvs :: srv :: Trigger > ( \"service/reset_route\" , std :: bind ( & AutowareStateMonitorNode :: onResetRouteService , this , _1 , _2 , _3 ) , rmw_qos_profile_services_default , callback_group_services_ ) ; // Publisher pub_autoware_state_ = this -> create_publisher < autoware_auto_system_msgs :: msg :: AutowareState > ( \"output/autoware_state\" , 1 ) ; pub_autoware_engage_ = this -> create_publisher < autoware_auto_vehicle_msgs :: msg :: Engage > ( \"output/autoware_engage\" , 1 ) ; // Diagnostic Updater setupDiagnosticUpdater ( ) ; // Wait for first topics std :: this_thread :: sleep_for ( std :: chrono :: milliseconds ( 1000 ) ) ; // Timer const auto period_ns = rclcpp :: Rate ( update_rate_ ) . period ( ) ; timer_ = rclcpp :: create_timer ( this , get_clock ( ) , period_ns , std :: bind ( & AutowareStateMonitorNode :: onTimer , this ) , callback_group_subscribers_ ) ; }', '{ using std :: placeholders :: _1 ; using std :: placeholders :: _2 ; using std :: placeholders :: _3 ; // Parameter update_rate_ = this -> declare_parameter ( \"update_rate\" , 10.0 ) ; disengage_on_route_ = this -> declare_parameter ( \"disengage_on_route\" , true ) ; disengage_on_goal_ = this -> declare_parameter ( \"disengage_on_goal\" , true ) ; // Parameter for StateMachine state_param_ . th_arrived_distance_m = this -> declare_parameter ( \"th_arrived_distance_m\" , 1.0 ) ; const auto th_arrived_angle_deg = this -> declare_parameter ( \"th_arrived_angle_deg\" , 45.0 ) ; state_param_ . th_arrived_angle = tier4_autoware_utils :: deg2rad ( th_arrived_angle_deg ) ; state_param_ . th_stopped_time_sec = this -> declare_parameter ( \"th_stopped_time_sec\" , 1.0 ) ; state_param_ . th_stopped_velocity_mps = this -> declare_parameter ( \"th_stopped_velocity_mps\" , 0.01 ) ; // State Machine state_machine_ = std :: make_shared < StateMachine > ( state_param_ ) ; // Config topic_configs_ = getConfigs < TopicConfig > ( this -> get_node_parameters_interface ( ) , \"topic_configs\" ) ; tf_configs_ = getConfigs < TfConfig > ( this -> get_node_parameters_interface ( ) , \"tf_configs\" ) ; // Callback Groups callback_group_subscribers_ = this -> create_callback_group ( rclcpp :: CallbackGroupType :: MutuallyExclusive ) ; callback_group_services_ = this -> create_callback_group ( rclcpp :: CallbackGroupType :: MutuallyExclusive ) ; auto subscriber_option = rclcpp :: SubscriptionOptions ( ) ; subscriber_option . callback_group = callback_group_subscribers_ ; // Topic Callback for ( const auto & topic_config : topic_configs_ ) { registerTopicCallback ( topic_config . name , topic_config . type , topic_config . transient_local , topic_config . best_effort ) ; } // Subscriber sub_autoware_engage_ = this -> create_subscription < autoware_auto_vehicle_msgs :: msg :: Engage > ( \"input/autoware_engage\" , 1 , std :: bind ( & AutowareStateMonitorNode :: onAutowareEngage , this , _1 ) , subscriber_option ) ; sub_control_mode_ = this -> create_subscription < autoware_auto_vehicle_msgs :: msg :: ControlModeReport > ( \"input/control_mode\" , 1 , std :: bind ( & AutowareStateMonitorNode :: onVehicleControlMode , this , _1 ) , subscriber_option ) ; sub_map_ = create_subscription < autoware_auto_mapping_msgs :: msg :: HADMapBin > ( \"input/vector_map\" , rclcpp :: QoS { 1 } . transient_local ( ) , std :: bind ( & AutowareStateMonitorNode :: onMap , this , _1 ) , subscriber_option ) ; sub_route_ = this -> create_subscription < autoware_auto_planning_msgs :: msg :: HADMapRoute > ( \"input/route\" , rclcpp :: QoS { 1 } . transient_local ( ) , std :: bind ( & AutowareStateMonitorNode :: onRoute , this , _1 ) , subscriber_option ) ; sub_odom_ = this -> create_subscription < nav_msgs :: msg :: Odometry > ( \"input/odometry\" , 100 , std :: bind ( & AutowareStateMonitorNode :: onOdometry , this , _1 ) , subscriber_option ) ; // Service srv_shutdown_ = this -> create_service < std_srvs :: srv :: Trigger > ( \"service/shutdown\" , std :: bind ( & AutowareStateMonitorNode :: onShutdownService , this , _1 , _2 , _3 ) , rmw_qos_profile_services_default , callback_group_services_ ) ; srv_reset_route_ = this -> create_service < std_srvs :: srv :: Trigger > ( \"service/reset_route\" , std :: bind ( & AutowareStateMonitorNode :: onResetRouteService , this , _1 , _2 , _3 ) , rmw_qos_profile_services_default , callback_group_services_ ) ; // Publisher pub_autoware_state_ = this -> create_publisher < autoware_auto_system_msgs :: msg :: AutowareState > ( \"output/autoware_state\" , 1 ) ; pub_autoware_engage_ = this -> create_publisher < autoware_auto_vehicle_msgs :: msg :: Engage > ( \"output/autoware_engage\" , 1 ) ; // Diagnostic Updater setupDiagnosticUpdater ( ) ; // Wait for first topics std :: this_thread :: sleep_for ( std :: chrono :: milliseconds ( 1000 ) ) ; // Timer const auto period_ns = rclcpp :: Rate ( update_rate_ ) . period ( ) ; timer_ = rclcpp :: create_timer ( this , get_clock ( ) , period_ns , std :: bind ( & AutowareStateMonitorNode :: onTimer , this ) , callback_group_subscribers_ ) ; }']\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n", - "[]\n" - ] - }, - { - "ename": "KeyboardInterrupt", - "evalue": "", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mKeyboardInterrupt\u001b[0m Traceback (most recent call last)", - "\u001b[1;32m/mnt/c/Users/maxim/Projects/ma-autoware-dependency-digger/clang-digger.ipynb Cell 5'\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[39mfor\u001b[39;00m src_file, args \u001b[39min\u001b[39;00m compile_commands\u001b[39m.\u001b[39mitems():\n\u001b[1;32m 5\u001b[0m src_file: \u001b[39mstr\u001b[39m\n\u001b[0;32m----> 6\u001b[0m tu \u001b[39m=\u001b[39m idx\u001b[39m.\u001b[39;49mparse(src_file, args\u001b[39m=\u001b[39;49margs) \u001b[39m# 0x200: KeepGoing (after fatal errors)\u001b[39;00m\n\u001b[1;32m 7\u001b[0m h \u001b[39m=\u001b[39m ast_utils\u001b[39m.\u001b[39mTUHandler(tu)\n\u001b[1;32m 8\u001b[0m h\u001b[39m.\u001b[39mget_subscription_callback_handlers()\n", - "File \u001b[0;32m~/.local/lib/python3.10/site-packages/clang/cindex.py:2815\u001b[0m, in \u001b[0;36mIndex.parse\u001b[0;34m(self, path, args, unsaved_files, options)\u001b[0m\n\u001b[1;32m 2802\u001b[0m \u001b[39mdef\u001b[39;00m \u001b[39mparse\u001b[39m(\u001b[39mself\u001b[39m, path, args\u001b[39m=\u001b[39m\u001b[39mNone\u001b[39;00m, unsaved_files\u001b[39m=\u001b[39m\u001b[39mNone\u001b[39;00m, options \u001b[39m=\u001b[39m \u001b[39m0\u001b[39m):\n\u001b[1;32m 2803\u001b[0m \u001b[39m\"\"\"Load the translation unit from the given source code file by running\u001b[39;00m\n\u001b[1;32m 2804\u001b[0m \u001b[39m clang and generating the AST before loading. Additional command line\u001b[39;00m\n\u001b[1;32m 2805\u001b[0m \u001b[39m parameters can be passed to clang via the args parameter.\u001b[39;00m\n\u001b[0;32m (...)\u001b[0m\n\u001b[1;32m 2813\u001b[0m \u001b[39m will be raised.\u001b[39;00m\n\u001b[1;32m 2814\u001b[0m \u001b[39m \"\"\"\u001b[39;00m\n\u001b[0;32m-> 2815\u001b[0m \u001b[39mreturn\u001b[39;00m TranslationUnit\u001b[39m.\u001b[39;49mfrom_source(path, args, unsaved_files, options,\n\u001b[1;32m 2816\u001b[0m \u001b[39mself\u001b[39;49m)\n", - "File \u001b[0;32m~/.local/lib/python3.10/site-packages/clang/cindex.py:2923\u001b[0m, in \u001b[0;36mTranslationUnit.from_source\u001b[0;34m(cls, filename, args, unsaved_files, options, index)\u001b[0m\n\u001b[1;32m 2920\u001b[0m unsaved_array[i]\u001b[39m.\u001b[39mcontents \u001b[39m=\u001b[39m contents\n\u001b[1;32m 2921\u001b[0m unsaved_array[i]\u001b[39m.\u001b[39mlength \u001b[39m=\u001b[39m \u001b[39mlen\u001b[39m(contents)\n\u001b[0;32m-> 2923\u001b[0m ptr \u001b[39m=\u001b[39m conf\u001b[39m.\u001b[39;49mlib\u001b[39m.\u001b[39;49mclang_parseTranslationUnit(index,\n\u001b[1;32m 2924\u001b[0m fspath(filename) \u001b[39mif\u001b[39;49;00m filename \u001b[39mis\u001b[39;49;00m \u001b[39mnot\u001b[39;49;00m \u001b[39mNone\u001b[39;49;00m \u001b[39melse\u001b[39;49;00m \u001b[39mNone\u001b[39;49;00m,\n\u001b[1;32m 2925\u001b[0m args_array,\n\u001b[1;32m 2926\u001b[0m \u001b[39mlen\u001b[39;49m(args), unsaved_array,\n\u001b[1;32m 2927\u001b[0m \u001b[39mlen\u001b[39;49m(unsaved_files), options)\n\u001b[1;32m 2929\u001b[0m \u001b[39mif\u001b[39;00m \u001b[39mnot\u001b[39;00m ptr:\n\u001b[1;32m 2930\u001b[0m \u001b[39mraise\u001b[39;00m TranslationUnitLoadError(\u001b[39m\"\u001b[39m\u001b[39mError parsing translation unit.\u001b[39m\u001b[39m\"\u001b[39m)\n", - "\u001b[0;31mKeyboardInterrupt\u001b[0m: " - ] - } - ], - "source": [ - "all_mappings = {}\n", - "idx = ci.Index.create()\n", - "\n", - "for src_file, args in compile_commands.items():\n", - " src_file: str\n", - " tu = idx.parse(src_file, args=args) # 0x200: KeepGoing (after fatal errors)\n", - " h = ast_utils.TUHandler(tu)\n", - " h.get_subscription_callback_handlers()\n", - "\n", - "with open(\"cb_identifiers.json\", \"w\") as f:\n", - " json.dump(all_mappings, f)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": false, - "pycharm": { - "name": "#%%\n" - } - }, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3.10.5 64-bit", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.10.5" - }, - "orig_nbformat": 4, - "vscode": { - "interpreter": { - "hash": "8a94588eda9d64d9e9a351ab8144e55b1fabf5113b54e67dd26a8c27df0381b3" - } - } - }, - "nbformat": 4, - "nbformat_minor": 2 -} diff --git a/digger.ipynb b/digger.ipynb deleted file mode 100644 index 189627d..0000000 --- a/digger.ipynb +++ /dev/null @@ -1,824 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 34, - "metadata": {}, - "outputs": [], - "source": [ - "import requests\n", - "import json\n", - "import pandas as pd\n", - "from urllib.parse import quote\n", - "\n", - "jj = lambda a, b: f\"{a.rstrip('/')}/{b.lstrip('/')}\"\n", - "\n", - "def pp(arg):\n", - " if isinstance(arg, str):\n", - " arg = json.loads(arg)\n", - " print(json.dumps(arg, indent=2, sort_keys=True))\n", - " \n", - "\n", - "API_URL = \"http://localhost:8080/api/v1\"\n", - "BASE_DIR = \"/home/max/projects/autoware/src\"\n", - "\n", - "headers = {'Authorization': \"Bearer TOKEN\"}" - ] - }, - { - "cell_type": "code", - "execution_count": 42, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/filter.cpp create_subscription 139 sub_input_ = create_subscription<PointCloud2>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/sensing/pointcloud_preprocessor/src/filter.cpp#create_subscription@139\n", - "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp create_subscription 70 emergency_state_sub_ = this->create_subscription<EmergencyState>( \n", - "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp bind 71 \"input/emergency_state\", 1, std::bind(&VehicleCmdGate::onEmergencyState, this, _1)); \n", - "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp create_subscription 72 external_emergency_stop_heartbeat_sub_ = this->create_subscription<Heartbeat>( \n", - "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp bind 74 std::bind(&VehicleCmdGate::onExternalEmergencyStopHeartbeat, this, _1)); \n", - "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp create_subscription 75 gate_mode_sub_ = this->create_subscription<GateMode>( \n", - "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp bind 76 \"input/gate_mode\", 1, std::bind(&VehicleCmdGate::onGateMode, this, _1)); \n", - "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp create_subscription 77 engage_sub_ = this->create_subscription<EngageMsg>( \n", - "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp bind 78 \"input/engage\", 1, std::bind(&VehicleCmdGate::onEngage, this, _1)); \n", - "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp create_subscription 79 steer_sub_ = this->create_subscription<SteeringReport>( \n", - "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp bind 80 \"input/steering\", 1, std::bind(&VehicleCmdGate::onSteering, this, _1)); \n", - "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp create_subscription 83 auto_control_cmd_sub_ = this->create_subscription<AckermannControlCommand>( \n", - "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp bind 84 \"input/auto/control_cmd\", 1, std::bind(&VehicleCmdGate::onAutoCtrlCmd, this, _1)); \n", - "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp create_subscription 86 auto_turn_indicator_cmd_sub_ = this->create_subscription<TurnIndicatorsCommand>( \n", - "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp bind 88 std::bind(&VehicleCmdGate::onAutoTurnIndicatorsCmd, this, _1)); \n", - "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp create_subscription 90 auto_hazard_light_cmd_sub_ = this->create_subscription<HazardLightsCommand>( \n", - "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp bind 91 \"input/auto/hazard_lights_cmd\", 1, std::bind(&VehicleCmdGate::onAutoHazardLightsCmd, this, _1)); \n", - "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp create_subscription 93 auto_gear_cmd_sub_ = this->create_subscription<GearCommand>( \n", - "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp bind 94 \"input/auto/gear_cmd\", 1, std::bind(&VehicleCmdGate::onAutoShiftCmd, this, _1)); \n", - "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp create_subscription 97 remote_control_cmd_sub_ = this->create_subscription<AckermannControlComman \n", - "/universe/autoware.universe/control/vehicle_cmd_gate/src/vehicle_cmd_gate.cpp bind 98 \"input/external/control_cmd\", 1, std::bind(&VehicleCmdGate::onRemoteCtrlCmd, this, _1)); \n", - "/universe/autoware.universe/system/system_monitor/test/src/cpu_monitor/test_tegra_cpu_monitor.cpp create_subscription 114 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", - "/universe/autoware.universe/system/system_monitor/test/src/cpu_monitor/test_tegra_cpu_monitor.cpp bind 115 \"/diagnostics\", 1000, std::bind(&TestCPUMonitor::diagCallback, monitor_.get(), _1)); \n", - "/universe/autoware.universe/simulator/fault_injection/src/fault_injection_node/fault_injection_node.cpp create_subscription 56 sub_simulation_events_ = this->create_subscription<SimulationEvents>( \n", - "/universe/autoware.universe/simulator/fault_injection/src/fault_injection_node/fault_injection_node.cpp bind 58 std::bind(&FaultInjectionNode::onSimulationEvents, this, _1)); \n", - "/universe/autoware.universe/planning/planning_evaluator/test/test_planning_evaluator_node.cpp create_subscription 85 metric_sub_ = rclcpp::create_subscription<DiagnosticArray>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/planning_evaluator/test/test_planning_evaluator_node.cpp#create_subscription@85\n", - "/universe/autoware.universe/control/lane_departure_checker/src/lane_departure_checker_node/lane_departure_checker_node.cpp create_subscription 148 sub_odom_ = this->create_subscription<nav_msgs::msg::Odometry>( \n", - "/universe/autoware.universe/control/lane_departure_checker/src/lane_departure_checker_node/lane_departure_checker_node.cpp bind 149 \"~/input/odometry\", 1, std::bind(&LaneDepartureCheckerNode::onOdometry, this, _1)); \n", - "/universe/autoware.universe/control/lane_departure_checker/src/lane_departure_checker_node/lane_departure_checker_node.cpp create_subscription 150 sub_lanelet_map_bin_ = this->create_subscription<HADMapBin>( \n", - "/universe/autoware.universe/control/lane_departure_checker/src/lane_departure_checker_node/lane_departure_checker_node.cpp bind 152 std::bind(&LaneDepartureCheckerNode::onLaneletMapBin, this, _1)); \n", - "/universe/autoware.universe/control/lane_departure_checker/src/lane_departure_checker_node/lane_departure_checker_node.cpp create_subscription 153 sub_route_ = this->create_subscription<HADMapRoute>( \n", - "/universe/autoware.universe/control/lane_departure_checker/src/lane_departure_checker_node/lane_departure_checker_node.cpp bind 155 std::bind(&LaneDepartureCheckerNode::onRoute, this, _1)); \n", - "/universe/autoware.universe/control/lane_departure_checker/src/lane_departure_checker_node/lane_departure_checker_node.cpp create_subscription 156 sub_reference_trajectory_ = this->create_subscription<Trajectory>( \n", - "/universe/autoware.universe/control/lane_departure_checker/src/lane_departure_checker_node/lane_departure_checker_node.cpp bind 158 std::bind(&LaneDepartureCheckerNode::onReferenceTrajectory, this, _1)); \n", - "/universe/autoware.universe/control/lane_departure_checker/src/lane_departure_checker_node/lane_departure_checker_node.cpp create_subscription 159 sub_predicted_trajectory_ = this->create_subscription<Trajectory>( \n", - "/universe/autoware.universe/control/lane_departure_checker/src/lane_departure_checker_node/lane_departure_checker_node.cpp bind 161 std::bind(&LaneDepartureCheckerNode::onPredictedTrajectory, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/emergency.cpp create_subscription 35 sub_emergency_ = create_subscription<tier4_external_api_msgs::msg::Emergency>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/emergency.cpp bind 36 \"/api/autoware/get/emergency\", rclcpp::QoS(1), std::bind(&Emergency::getEmergency, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rosbag_logging_mode.cpp create_subscription 38 create_subscription<tier4_external_api_msgs::msg::RosbagLoggingMode>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rosbag_logging_mode.cpp bind 40 std::bind(&RosbagLoggingMode::onRosbagLoggingMode, this, _1)); \n", - "/universe/autoware.universe/system/emergency_handler/src/emergency_handler/emergency_handler_core.cpp create_subscription 34 create_subscription<autoware_auto_system_msgs::msg::HazardStatusStamped>( \n", - "/universe/autoware.universe/system/emergency_handler/src/emergency_handler/emergency_handler_core.cpp bind 36 std::bind(&EmergencyHandler::onHazardStatusStamped, this, _1)); \n", - "/universe/autoware.universe/system/emergency_handler/src/emergency_handler/emergency_handler_core.cpp create_subscription 38 create_subscription<autoware_auto_control_msgs::msg::AckermannControlCommand>( \n", - "/universe/autoware.universe/system/emergency_handler/src/emergency_handler/emergency_handler_core.cpp bind 40 std::bind(&EmergencyHandler::onPrevControlCommand, this, _1)); \n", - "/universe/autoware.universe/system/emergency_handler/src/emergency_handler/emergency_handler_core.cpp create_subscription 41 sub_odom_ = create_subscription<nav_msgs::msg::Odometry>( \n", - "/universe/autoware.universe/system/emergency_handler/src/emergency_handler/emergency_handler_core.cpp bind 42 \"~/input/odometry\", rclcpp::QoS{1}, std::bind(&EmergencyHandler::onOdometry, this, _1)); \n", - "/universe/autoware.universe/system/emergency_handler/src/emergency_handler/emergency_handler_core.cpp create_subscription 44 sub_control_mode_ = create_subscription<autoware_auto_vehicle_msgs::msg::ControlModeReport>( \n", - "/universe/autoware.universe/system/emergency_handler/src/emergency_handler/emergency_handler_core.cpp bind 45 \"~/input/control_mode\", rclcpp::QoS{1}, std::bind(&EmergencyHandler::onControlMode, this, _1)); \n", - "/universe/autoware.universe/simulator/dummy_perception_publisher/src/node.cpp create_subscription 92 object_sub_ = this->create_subscription<dummy_perception_publisher::msg::Object>( \n", - "/universe/autoware.universe/simulator/dummy_perception_publisher/src/node.cpp bind 94 std::bind(&DummyPerceptionPublisherNode::objectCallback, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/localization/stop_filter/src/stop_filter.cpp create_subscription 38 sub_odom_ = create_subscription<nav_msgs::msg::Odometry>( \n", - "/universe/autoware.universe/localization/stop_filter/src/stop_filter.cpp bind 39 \"input/odom\", 1, std::bind(&StopFilter::callbackOdometry, this, _1)); \n", - "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/trajectory_visualizer.py create_subscription 114 self.sub_localization_twist = self.create_subscription( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/trajectory_visualizer.py#create_subscription@114\n", - "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/trajectory_visualizer.py create_subscription 117 self.sub_vehicle_twist = self.create_subscription( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/trajectory_visualizer.py#create_subscription@117\n", - "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/trajectory_visualizer.py create_subscription 121 self.sub_external_velocity_limit = self.create_subscription( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/trajectory_visualizer.py#create_subscription@121\n", - "/universe/autoware.universe/sensing/livox/livox_tag_filter/src/livox_tag_filter_node/livox_tag_filter_node.cpp create_subscription 46 sub_pointcloud_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", - "/universe/autoware.universe/sensing/livox/livox_tag_filter/src/livox_tag_filter_node/livox_tag_filter_node.cpp bind 47 \"input\", rclcpp::SensorDataQoS(), std::bind(&LivoxTagFilterNode::onPointCloud, this, _1)); \n", - "/universe/external/grid_map/grid_map_demos/src/ImageToGridmapDemo.cpp create_subscription 24 this->create_subscription<sensor_msgs::msg::Image>( \n", - "/universe/external/grid_map/grid_map_demos/src/ImageToGridmapDemo.cpp bind 26 std::bind(&ImageToGridmapDemo::imageCallback, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/system/system_monitor/test/src/gpu_monitor/test_unknown_gpu_monitor.cpp create_subscription 61 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", - "/universe/autoware.universe/system/system_monitor/test/src/gpu_monitor/test_unknown_gpu_monitor.cpp bind 62 \"/diagnostics\", 1000, std::bind(&TestGPUMonitor::diagCallback, monitor_.get(), _1)); \n", - "/universe/autoware.universe/planning/motion_velocity_smoother/src/motion_velocity_smoother_node.cpp create_subscription 81 sub_current_trajectory_ = create_subscription<Trajectory>( \n", - "/universe/autoware.universe/planning/motion_velocity_smoother/src/motion_velocity_smoother_node.cpp bind 82 \"~/input/trajectory\", 1, std::bind(&MotionVelocitySmootherNode::onCurrentTrajectory, this, _1)); \n", - "/universe/autoware.universe/planning/motion_velocity_smoother/src/motion_velocity_smoother_node.cpp create_subscription 83 sub_current_odometry_ = create_subscription<Odometry>( \n", - "/universe/autoware.universe/planning/motion_velocity_smoother/src/motion_velocity_smoother_node.cpp bind 85 std::bind(&MotionVelocitySmootherNode::onCurrentOdometry, this, _1)); \n", - "/universe/autoware.universe/planning/motion_velocity_smoother/src/motion_velocity_smoother_node.cpp create_subscription 86 sub_external_velocity_limit_ = create_subscription<VelocityLimit>( \n", - "/universe/autoware.universe/planning/motion_velocity_smoother/src/motion_velocity_smoother_node.cpp bind 88 std::bind(&MotionVelocitySmootherNode::onExternalVelocityLimit, this, _1)); \n", - "/universe/autoware.universe/perception/traffic_light_visualization/src/traffic_light_map_visualizer/node.cpp create_subscription 123 tl_state_sub_ = create_subscription<autoware_auto_perception_msgs::msg::TrafficSignalArray>( \n", - "/universe/autoware.universe/perception/traffic_light_visualization/src/traffic_light_map_visualizer/node.cpp bind 125 std::bind(&TrafficLightMapVisualizerNode::trafficSignalsCallback, this, _1)); \n", - "/universe/autoware.universe/perception/traffic_light_visualization/src/traffic_light_map_visualizer/node.cpp create_subscription 126 vector_map_sub_ = create_subscription<autoware_auto_mapping_msgs::msg::HADMapBin>( \n", - "/universe/autoware.universe/perception/traffic_light_visualization/src/traffic_light_map_visualizer/node.cpp bind 128 std::bind(&TrafficLightMapVisualizerNode::binMapCallback, this, _1)); \n", - "/universe/autoware.universe/simulator/fault_injection/test/test_fault_injection_node.test.py create_subscription 103 self.test_node.create_subscription( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/simulator/fault_injection/test/test_fault_injection_node.test.py#create_subscription@103\n", - "/universe/autoware.universe/common/fake_test_node/test/test_fake_test_node.cpp create_subscription 47 m_sub{this->create_subscription<Int32>(\"/input_topic\", 10, [&](const Int32::SharedPtr msg) { \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/common/fake_test_node/test/test_fake_test_node.cpp#create_subscription@47\n", - "/universe/autoware.universe/common/fake_test_node/test/test_fake_test_node.cpp create_subscription 69 auto result_odom_subscription = fixture->template create_subscription<Bool>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/common/fake_test_node/test/test_fake_test_node.cpp#create_subscription@69\n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp create_subscription 97 this->create_subscription<autoware_auto_planning_msgs::msg::PathWithLaneId>( \n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp bind 98 \"~/input/path_with_lane_id\", 1, std::bind(&BehaviorVelocityPlannerNode::onTrigger, this, _1), \n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp create_subscription 103 this->create_subscription<autoware_auto_perception_msgs::msg::PredictedObjects>( \n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp bind 105 std::bind(&BehaviorVelocityPlannerNode::onPredictedObjects, this, _1), \n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp create_subscription 107 sub_no_ground_pointcloud_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp bind 109 std::bind(&BehaviorVelocityPlannerNode::onNoGroundPointCloud, this, _1), \n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp create_subscription 111 sub_vehicle_odometry_ = this->create_subscription<nav_msgs::msg::Odometry>( \n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp bind 113 std::bind(&BehaviorVelocityPlannerNode::onVehicleVelocity, this, _1), \n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp create_subscription 115 sub_lanelet_map_ = this->create_subscription<autoware_auto_mapping_msgs::msg::HADMapBin>( \n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp bind 117 std::bind(&BehaviorVelocityPlannerNode::onLaneletMap, this, _1), \n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp create_subscription 120 this->create_subscription<autoware_auto_perception_msgs::msg::TrafficSignalArray>( \n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp bind 122 std::bind(&BehaviorVelocityPlannerNode::onTrafficSignals, this, _1), \n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp create_subscription 124 sub_external_crosswalk_states_ = this->create_subscription<tier4_api_msgs::msg::CrosswalkStatus>( \n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp bind 126 std::bind(&BehaviorVelocityPlannerNode::onExternalCrosswalkStates, this, _1), \n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp create_subscription 129 this->create_subscription<tier4_api_msgs::msg::IntersectionStatus>( \n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp bind 131 std::bind(&BehaviorVelocityPlannerNode::onExternalIntersectionStates, this, _1)); \n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp create_subscription 132 sub_external_velocity_limit_ = this->create_subscription<VelocityLimit>( \n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp bind 134 std::bind(&BehaviorVelocityPlannerNode::onExternalVelocityLimit, this, _1)); \n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp create_subscription 136 this->create_subscription<autoware_auto_perception_msg \n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/node.cpp bind 138 std::bind(&BehaviorVelocityPlannerNode::onExternalTrafficSignals, this, _1), \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/map.cpp create_subscription 34 sub_map_info_ = create_subscription<tier4_external_api_msgs::msg::MapHash>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/map.cpp bind 36 std::bind(&Map::getMapHash, this, _1)); \n", - "/universe/autoware.universe/system/system_monitor/test/src/ntp_monitor/test_ntp_monitor.cpp create_subscription 100 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", - "/universe/autoware.universe/system/system_monitor/test/src/ntp_monitor/test_ntp_monitor.cpp bind 101 \"/diagnostics\", 1000, std::bind(&TestNTPMonitor::diagCallback, monitor_.get(), _1)); \n", - "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp create_subscription 89 sub_init_pose_ = create_subscription<PoseWithCovarianceStamped>( \n", - "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp bind 90 \"/initialpose\", QoS{1}, std::bind(&SimplePlanningSimulator::on_initialpose, this, _1)); \n", - "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp create_subscription 91 sub_ackermann_cmd_ = create_subscription<AckermannControlCommand>( \n", - "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp bind 93 std::bind(&SimplePlanningSimulator::on_ackermann_cmd, this, _1)); \n", - "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp create_subscription 94 sub_gear_cmd_ = create_subscription<GearCommand>( \n", - "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp bind 95 \"input/gear_command\", QoS{1}, std::bind(&SimplePlanningSimulator::on_gear_cmd, this, _1)); \n", - "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp create_subscription 96 sub_turn_indicators_cmd_ = create_subscription<TurnIndicatorsCommand>( \n", - "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp bind 98 std::bind(&SimplePlanningSimulator::on_turn_indicators_cmd, this, _1)); \n", - "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp create_subscription 99 sub_hazard_lights_cmd_ = create_subscription<HazardLightsCommand>( \n", - "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp bind 101 std::bind(&SimplePlanningSimulator::on_hazard_lights_cmd, this, _1)); \n", - "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp create_subscription 102 sub_trajectory_ = create_subscription<Trajectory>( \n", - "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp bind 103 \"input/trajectory\", QoS{1}, std::bind(&SimplePlanningSimulator::on_trajectory, this, _1)); \n", - "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp create_subscription 104 sub_engage_ = create_subscription<Engage>( \n", - "/universe/autoware.universe/simulator/simple_planning_simulator/src/simple_planning_simulator/simple_planning_simulator_core.cpp bind 105 \"input/engage\", rclcpp::QoS{1}, std::bind(&SimplePlanningSimulator::on_engage, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/velocity.cpp create_subscription 33 sub_planning_velocity_ = create_subscription<tier4_planning_msgs::msg::VelocityLimit>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/velocity.cpp bind 35 std::bind(&Velocity::onVelocityLimit, this, _1)); \n", - "/universe/autoware.universe/system/system_error_monitor/src/system_error_monitor_core.cpp create_subscription 251 sub_diag_array_ = create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", - "/universe/autoware.universe/system/system_error_monitor/src/system_error_monitor_core.cpp bind 252 \"input/diag_array\", rclcpp::QoS{1}, std::bind(&AutowareErrorMonitor::onDiagArray, this, _1)); \n", - "/universe/autoware.universe/system/system_error_monitor/src/system_error_monitor_core.cpp create_subscription 253 sub_current_gate_mode_ = create_subscription<tier4_control_msgs::msg::GateMode>( \n", - "/universe/autoware.universe/system/system_error_monitor/src/system_error_monitor_core.cpp bind 255 std::bind(&AutowareErrorMonitor::onCurrentGateMode, this, _1)); \n", - "/universe/autoware.universe/system/system_error_monitor/src/system_error_monitor_core.cpp create_subscription 256 sub_autoware_state_ = create_subscription<autoware_auto_system_msgs::msg::AutowareState>( \n", - "/universe/autoware.universe/system/system_error_monitor/src/system_error_monitor_core.cpp bind 258 std::bind(&AutowareErrorMonitor::onAutowareState, this, _1)); \n", - "/universe/autoware.universe/system/system_error_monitor/src/system_error_monitor_core.cpp create_subscription 259 sub_control_mode_ = create_subscription<autoware_auto_vehicle_msgs::msg::ControlModeReport>( \n", - "/universe/autoware.universe/system/system_error_monitor/src/system_error_monitor_core.cpp bind 261 std::bind(&AutowareErrorMonitor::onControlMode, this, _1)); \n", - "/universe/autoware.universe/perception/detected_object_feature_remover/src/detected_object_feature_remover.cpp create_subscription 23 sub_ = this->create_subscription<DetectedObjectsWithFeature>( \n", - "/universe/autoware.universe/perception/detected_object_feature_remover/src/detected_object_feature_remover.cpp bind 24 \"~/input\", 1, std::bind(&DetectedObjectFeatureRemover::objectCallback, this, _1)); \n", - "/universe/autoware.universe/planning/obstacle_avoidance_planner/src/node.cpp create_subscription 259 path_sub_ = create_subscription<autoware_auto_planning_msgs::msg::Path>( \n", - "/universe/autoware.universe/planning/obstacle_avoidance_planner/src/node.cpp bind 261 std::bind(&ObstacleAvoidancePlanner::pathCallback, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/planning/obstacle_avoidance_planner/src/node.cpp create_subscription 262 odom_sub_ = create_subscription<nav_msgs::msg::Odometry>( \n", - "/universe/autoware.universe/planning/obstacle_avoidance_planner/src/node.cpp bind 264 std::bind(&ObstacleAvoidancePlanner::odomCallback, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/planning/obstacle_avoidance_planner/src/node.cpp create_subscription 265 objects_sub_ = create_subscription<autoware_auto_perception_msgs::msg::PredictedObjects>( \n", - "/universe/autoware.universe/planning/obstacle_avoidance_planner/src/node.cpp bind 267 std::bind(&ObstacleAvoidancePlanner::objectsCallback, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/planning/obstacle_avoidance_planner/src/node.cpp create_subscription 268 is_avoidance_sub_ = create_subscription<tier4_planning_msgs::msg::EnableAvoidance>( \n", - "/universe/autoware.universe/planning/obstacle_avoidance_planner/src/node.cpp bind 270 std::bind(&ObstacleAvoidancePlanner::enableAvoidanceCallback, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/perception/euclidean_cluster/src/voxel_grid_based_euclidean_cluster_node.cpp create_subscription 37 pointcloud_sub_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", - "/universe/autoware.universe/perception/euclidean_cluster/src/voxel_grid_based_euclidean_cluster_node.cpp bind 39 std::bind(&VoxelGridBasedEuclideanClusterNode::onPointCloud, this, _1)); \n", - "/universe/autoware.universe/localization/twist2accel/src/twist2accel.cpp create_subscription 35 sub_odom_ = create_subscription<nav_msgs::msg::Odometry>( \n", - "/universe/autoware.universe/localization/twist2accel/src/twist2accel.cpp bind 36 \"input/odom\", 1, std::bind(&Twist2Accel::callbackOdometry, this, _1)); \n", - "/universe/autoware.universe/localization/twist2accel/src/twist2accel.cpp create_subscription 37 sub_twist_ = create_subscription<geometry_msgs::msg::TwistWithCovarianceStamped>( \n", - "/universe/autoware.universe/localization/twist2accel/src/twist2accel.cpp bind 38 \"input/twist\", 1, std::bind(&Twist2Accel::callbackTwistWithCovariance, this, _1)); \n", - "/universe/autoware.universe/planning/obstacle_stop_planner/src/node.cpp create_subscription 524 obstacle_pointcloud_sub_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", - "/universe/autoware.universe/planning/obstacle_stop_planner/src/node.cpp bind 526 std::bind(&ObstacleStopPlannerNode::obstaclePointcloudCallback, this, std::placeholders::_1), \n", - "/universe/autoware.universe/planning/obstacle_stop_planner/src/node.cpp create_subscription 528 path_sub_ = this->create_subscription<Trajectory>( \n", - "/universe/autoware.universe/planning/obstacle_stop_planner/src/node.cpp bind 530 std::bind(&ObstacleStopPlannerNode::pathCallback, this, std::placeholders::_1), \n", - "/universe/autoware.universe/planning/obstacle_stop_planner/src/node.cpp create_subscription 532 current_velocity_sub_ = this->create_subscription<nav_msgs::msg::Odometry>( \n", - "/universe/autoware.universe/planning/obstacle_stop_planner/src/node.cpp bind 534 std::bind(&ObstacleStopPlannerNode::currentVelocityCallback, this, std::placeholders::_1), \n", - "/universe/autoware.universe/planning/obstacle_stop_planner/src/node.cpp create_subscription 536 dynamic_object_sub_ = this->create_subscription<PredictedObjects>( \n", - "/universe/autoware.universe/planning/obstacle_stop_planner/src/node.cpp bind 538 std::bind(&ObstacleStopPlannerNode::dynamicObjectCallback, this, std::placeholders::_1), \n", - "/universe/autoware.universe/planning/obstacle_stop_planner/src/node.cpp create_subscription 540 expand_stop_range_sub_ = this->create_subscription<ExpandStopRange>( \n", - "/universe/autoware.universe/planning/obstacle_stop_planner/src/node.cpp bind 542 std::bind( \n", - "/universe/autoware.universe/system/system_monitor/test/src/cpu_monitor/test_raspi_cpu_monitor.cpp create_subscription 113 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", - "/universe/autoware.universe/system/system_monitor/test/src/cpu_monitor/test_raspi_cpu_monitor.cpp bind 114 \"/diagnostics\", 1000, std::bind(&TestCPUMonitor::diagCallback, monitor_.get(), _1)); \n", - "/sensor_component/external/tamagawa_imu_driver/src/tag_can_driver.cpp create_subscription 104 rclcpp::Subscription<can_msgs::msg::Frame>::SharedPtr sub = node->create_subscription<can_msgs::msg::Frame>(\"/can/imu\", 100, receive_CAN);\n", - "[WARN] Could not find matching bind statement for /sensor_component/external/tamagawa_imu_driver/src/tag_can_driver.cpp#create_subscription@104\n", - "/universe/autoware.universe/localization/initial_pose_button_panel/src/initial_pose_button_panel.cpp create_subscription 66 pose_cov_sub_ = raw_node->create_subscription<geometry_msgs::msg::PoseWithCovarianceStamped>( \n", - "/universe/autoware.universe/localization/initial_pose_button_panel/src/initial_pose_button_panel.cpp bind 68 std::bind(&InitialPoseButtonPanel::callbackPoseCov, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/localization/initial_pose_button_panel/src/initial_pose_button_panel.cpp create_subscription 87 pose_cov_sub_ = raw_node->create_subscription<geometry_msgs::msg::PoseWithCovarianceStamped>( \n", - "/universe/autoware.universe/localization/initial_pose_button_panel/src/initial_pose_button_panel.cpp bind 89 std::bind(&InitialPoseButtonPanel::callbackPoseCov, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/common/tier4_autoware_utils/include/tier4_autoware_utils/system/heartbeat_checker.hpp create_subscription 30 sub_heartbeat_ = node.create_subscription<HeartbeatMsg>( \n", - "/universe/autoware.universe/common/tier4_autoware_utils/include/tier4_autoware_utils/system/heartbeat_checker.hpp bind 31 topic_name, rclcpp::QoS{1}, std::bind(&HeaderlessHeartbeatChecker::onHeartbeat, this, _1)); \n", - "/universe/autoware.universe/control/trajectory_follower_nodes/src/lateral_controller_node.cpp create_subscription 142 m_sub_ref_path = create_subscription<autoware_auto_planning_msgs::msg::Trajectory>( \n", - "/universe/autoware.universe/control/trajectory_follower_nodes/src/lateral_controller_node.cpp bind 144 std::bind(&LateralController::onTrajectory, this, _1)); \n", - "/universe/autoware.universe/control/trajectory_follower_nodes/src/lateral_controller_node.cpp create_subscription 145 m_sub_steering = create_subscription<autoware_auto_vehicle_msgs::msg::SteeringReport>( \n", - "/universe/autoware.universe/control/trajectory_follower_nodes/src/lateral_controller_node.cpp bind 147 std::bind(&LateralController::onSteering, this, _1)); \n", - "/universe/autoware.universe/control/trajectory_follower_nodes/src/lateral_controller_node.cpp create_subscription 148 m_sub_odometry = create_subscription<nav_msgs::msg::Odometry>( \n", - "/universe/autoware.universe/control/trajectory_follower_nodes/src/lateral_controller_node.cpp bind 150 std::bind(&LateralController::onOdometry, this, _1)); \n", - "/universe/autoware.universe/map/map_tf_generator/src/map_tf_generator_node.cpp create_subscription 41 sub_ = create_subscription<sensor_msgs::msg::PointCloud2>( \n", - "/universe/autoware.universe/map/map_tf_generator/src/map_tf_generator_node.cpp bind 43 std::bind(&MapTFGeneratorNode::onPointCloud, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/system/system_monitor/test/src/cpu_monitor/test_arm_cpu_monitor.cpp create_subscription 113 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", - "/universe/autoware.universe/system/system_monitor/test/src/cpu_monitor/test_arm_cpu_monitor.cpp bind 114 \"/diagnostics\", 1000, std::bind(&TestCPUMonitor::diagCallback, monitor_.get(), _1)); \n", - "/universe/autoware.universe/control/obstacle_collision_checker/src/obstacle_collision_checker_node/obstacle_collision_checker_node.cpp create_subscription 72 sub_obstacle_pointcloud_ = create_subscription<sensor_msgs::msg::PointCloud2>( \n", - "/universe/autoware.universe/control/obstacle_collision_checker/src/obstacle_collision_checker_node/obstacle_collision_checker_node.cpp bind 74 std::bind(&ObstacleCollisionCheckerNode::onObstaclePointcloud, this, _1)); \n", - "/universe/autoware.universe/control/obstacle_collision_checker/src/obstacle_collision_checker_node/obstacle_collision_checker_node.cpp create_subscription 75 sub_reference_trajectory_ = create_subscription<autoware_auto_planning_msgs::msg::Trajectory>( \n", - "/universe/autoware.universe/control/obstacle_collision_checker/src/obstacle_collision_checker_node/obstacle_collision_checker_node.cpp bind 77 std::bind(&ObstacleCollisionCheckerNode::onReferenceTrajectory, this, _1)); \n", - "/universe/autoware.universe/control/obstacle_collision_checker/src/obstacle_collision_checker_node/obstacle_collision_checker_node.cpp create_subscription 78 sub_predicted_trajectory_ = create_subscription<autoware_auto_planning_msgs::msg::Trajectory>( \n", - "/universe/autoware.universe/control/obstacle_collision_checker/src/obstacle_collision_checker_node/obstacle_collision_checker_node.cpp bind 80 std::bind(&ObstacleCollisionCheckerNode::onPredictedTrajectory, this, _1)); \n", - "/universe/autoware.universe/control/obstacle_collision_checker/src/obstacle_collision_checker_node/obstacle_collision_checker_node.cpp create_subscription 81 sub_odom_ = create_subscription<nav_msgs::msg::Odometry>( \n", - "/universe/autoware.universe/control/obstacle_collision_checker/src/obstacle_collision_checker_node/obstacle_collision_checker_node.cpp bind 82 \"input/odometry\", 1, std::bind(&ObstacleCollisionCheckerNode::onOdom, this, _1)); \n", - "/universe/autoware.universe/control/joy_controller/src/joy_controller/joy_controller_node.cpp create_subscription 476 sub_joy_ = this->create_subscription<sensor_msgs::msg::Joy>( \n", - "/universe/autoware.universe/control/joy_controller/src/joy_controller/joy_controller_node.cpp bind 477 \"input/joy\", 1, std::bind(&AutowareJoyControllerNode::onJoy, this, std::placeholders::_1), \n", - "/universe/autoware.universe/control/joy_controller/src/joy_controller/joy_controller_node.cpp create_subscription 479 sub_odom_ = this->create_subscription<nav_msgs::msg::Odometry>( \n", - "/universe/autoware.universe/control/joy_controller/src/joy_controller/joy_controller_node.cpp bind 481 std::bind(&AutowareJoyControllerNode::onOdometry, this, std::placeholders::_1), \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/start.cpp create_subscription 28 sub_get_operator_ = create_subscription<tier4_external_api_msgs::msg::Operator>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/start.cpp bind 29 \"/api/external/get/operator\", rclcpp::QoS(1), std::bind(&Start::getOperator, this, _1)); \n", - "/universe/autoware.universe/planning/behavior_path_planner/src/scene_module/side_shift/side_shift_module.cpp create_subscription 62 lateral_offset_subscriber_ = node.create_subscription<LateralOffset>( \n", - "/universe/autoware.universe/planning/behavior_path_planner/src/scene_module/side_shift/side_shift_module.cpp bind 63 \"~/input/lateral_offset\", 1, std::bind(&SideShiftModule::onLateralOffset, this, _1)); \n", - "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp create_subscription 89 velocity_subscriber_ = create_subscription<Odometry>( \n", - "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp bind 90 \"~/input/odometry\", 1, std::bind(&BehaviorPathPlannerNode::onVelocity, this, _1), \n", - "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp create_subscription 92 perception_subscriber_ = create_subscription<PredictedObjects>( \n", - "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp bind 93 \"~/input/perception\", 1, std::bind(&BehaviorPathPlannerNode::onPerception, this, _1), \n", - "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp create_subscription 95 scenario_subscriber_ = create_subscription<Scenario>( \n", - "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp bind 103 std::bind(&BehaviorPathPlannerNode::onExternalApproval, this, _1), \n", - "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp create_subscription 101 external_approval_subscriber_ = create_subscription<ApprovalMsg>( \n", - "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp bind 103 std::bind(&BehaviorPathPlannerNode::onExternalApproval, this, _1), \n", - "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp create_subscription 105 force_approval_subscriber_ = create_subscription<PathChangeModule>( \n", - "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp bind 106 \"~/input/force_approval\", 1, std::bind(&BehaviorPathPlannerNode::onForceApproval, this, _1), \n", - "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp create_subscription 111 vector_map_subscriber_ = create_subscription<HADMapBin>( \n", - "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp bind 112 \"~/input/vector_map\", qos_transient_local, std::bind(&BehaviorPathPlannerNode::onMap, this, _1), \n", - "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp create_subscription 114 route_subscriber_ = create_subscription<HADMapRoute>( \n", - "/universe/autoware.universe/planning/behavior_path_planner/src/behavior_path_planner_node.cpp bind 115 \"~/input/route\", qos_transient_local, std::bind(&BehaviorPathPlannerNode::onRoute, this, _1), \n", - "/universe/autoware.universe/system/ad_service_state_monitor/src/ad_service_state_monitor_node/ad_service_state_monitor_node.cpp create_subscription 430 sub_autoware_engage_ = this->create_subscription<autoware_auto_vehicle_msgs::msg::Engage>( \n", - "/universe/autoware.universe/system/ad_service_state_monitor/src/ad_service_state_monitor_node/ad_service_state_monitor_node.cpp bind 431 \"input/autoware_engage\", 1, std::bind(&AutowareStateMonitorNode::onAutowareEngage, this, _1), \n", - "/universe/autoware.universe/system/ad_service_state_monitor/src/ad_service_state_monitor_node/ad_service_state_monitor_node.cpp create_subscription 433 sub_control_mode_ = this->create_subscription<autoware_auto_vehicle_msgs::msg::ControlModeReport>( \n", - "/universe/autoware.universe/system/ad_service_state_monitor/src/ad_service_state_monitor_node/ad_service_state_monitor_node.cpp bind 434 \"input/control_mode\", 1, std::bind(&AutowareStateMonitorNode::onVehicleControlMode, this, _1), \n", - "/universe/autoware.universe/system/ad_service_state_monitor/src/ad_service_state_monitor_node/ad_service_state_monitor_node.cpp create_subscription 436 sub_route_ = this->create_subscription<autoware_auto_planning_msgs::msg::HADMapRoute>( \n", - "/universe/autoware.universe/system/ad_service_state_monitor/src/ad_service_state_monitor_node/ad_service_state_monitor_node.cpp bind 438 std::bind(&AutowareStateMonitorNode::onRoute, this, _1), subscriber_option); \n", - "/universe/autoware.universe/system/ad_service_state_monitor/src/ad_service_state_monitor_node/ad_service_state_monitor_node.cpp create_subscription 439 sub_odom_ = this->create_subscription<nav_msgs::msg::Odometry>( \n", - "/universe/autoware.universe/system/ad_service_state_monitor/src/ad_service_state_monitor_node/ad_service_state_monitor_node.cpp bind 440 \"input/odometry\", 100, std::bind(&AutowareStateMonitorNode::onOdometry, this, _1), \n", - "/universe/autoware.universe/localization/pose2twist/src/pose2twist_core.cpp create_subscription 39 pose_sub_ = create_subscription<geometry_msgs::msg::PoseStamped>( \n", - "/universe/autoware.universe/localization/pose2twist/src/pose2twist_core.cpp bind 40 \"pose\", queue_size, std::bind(&Pose2Twist::callbackPose, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/cpu_usage.cpp create_subscription 25 sub_cpu_usage_ = create_subscription<tier4_external_api_msgs::msg::CpuUsage>( \n", - "[WARN] Could not find matching bind statement for /universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/cpu_usage.cpp#create_subscription@25\n", - "/universe/autoware.universe/system/system_monitor/test/src/mem_monitor/test_mem_monitor.cpp create_subscription 99 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", - "/universe/autoware.universe/system/system_monitor/test/src/mem_monitor/test_mem_monitor.cpp bind 100 \"/diagnostics\", 1000, std::bind(&TestMemMonitor::diagCallback, monitor_.get(), _1)); \n", - "/universe/autoware.universe/common/fake_test_node/include/fake_test_node/fake_test_node.hpp create_subscription 140 typename rclcpp::Subscription<MsgT>::SharedPtr create_subscription( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/common/fake_test_node/include/fake_test_node/fake_test_node.hpp#create_subscription@140\n", - "/universe/autoware.universe/common/fake_test_node/include/fake_test_node/fake_test_node.hpp create_subscription 146 auto subscription = m_fake_node->create_subscription<MsgT>(topic, qos, callback); \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/common/fake_test_node/include/fake_test_node/fake_test_node.hpp#create_subscription@146\n", - "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/vector_map_filter/lanelet2_map_filter_nodelet.cpp create_subscription 53 map_sub_ = this->create_subscription<autoware_auto_mapping_msgs::msg::HADMapBin>( \n", - "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/vector_map_filter/lanelet2_map_filter_nodelet.cpp bind 55 std::bind(&Lanelet2MapFilterComponent::mapCallback, this, _1)); \n", - "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/vector_map_filter/lanelet2_map_filter_nodelet.cpp create_subscription 56 pointcloud_sub_ = this->create_subscription<PointCloud2>( \n", - "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/vector_map_filter/lanelet2_map_filter_nodelet.cpp bind 58 std::bind(&Lanelet2MapFilterComponent::pointcloudCallback, this, _1)); \n", - "/universe/autoware.universe/common/tier4_planning_rviz_plugin/src/tools/max_velocity.cpp create_subscription 117 max_vel_sub_ = raw_node->create_subscription<tier4_planning_msgs::msg::VelocityLimit>( \n", - "/universe/autoware.universe/common/tier4_planning_rviz_plugin/src/tools/max_velocity.cpp bind 119 std::bind(&MaxVelocityDisplay::processMessage, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/system/system_monitor/test/src/gpu_monitor/test_tegra_gpu_monitor.cpp create_subscription 93 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", - "/universe/autoware.universe/system/system_monitor/test/src/gpu_monitor/test_tegra_gpu_monitor.cpp bind 94 \"/diagnostics\", 1000, std::bind(&TestGPUMonitor::diagCallback, monitor_.get(), _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/iv_msgs.cpp create_subscription 25 sub_state_ = create_subscription<AutowareStateAuto>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/iv_msgs.cpp bind 26 \"/autoware/state\", rclcpp::QoS(1), std::bind(&IVMsgs::onState, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/iv_msgs.cpp create_subscription 27 sub_emergency_ = create_subscription<EmergencyStateAuto>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/iv_msgs.cpp bind 28 \"/system/emergency/emergency_state\", rclcpp::QoS(1), std::bind(&IVMsgs::onEmergency, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/iv_msgs.cpp create_subscription 32 sub_control_mode_ = create_subscription<ControlModeAuto>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/iv_msgs.cpp bind 33 \"/vehicle/status/control_mode\", rclcpp::QoS(1), std::bind(&IVMsgs::onControlMode, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/iv_msgs.cpp create_subscription 37 sub_trajectory_ = create_subscription<TrajectoryAuto>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/iv_msgs.cpp bind 39 std::bind(&IVMsgs::onTrajectory, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/iv_msgs.cpp create_subscription 43 sub_tracked_objects_ = create_subscription<TrackedObjectsAuto>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/iv_msgs.cpp bind 45 std::bind(&IVMsgs::onTrackedObjects, this, _1)); \n", - "/universe/autoware.universe/planning/planning_error_monitor/test/src/test_planning_error_monitor_pubsub.cpp create_subscription 39 diag_sub_ = create_subscription<DiagnosticArray>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/planning_error_monitor/test/src/test_planning_error_monitor_pubsub.cpp#create_subscription@39\n", - "/universe/autoware.universe/perception/compare_map_segmentation/src/compare_elevation_map_filter_node.cpp create_subscription 49 sub_map_ = this->create_subscription<grid_map_msgs::msg::GridMap>( \n", - "/universe/autoware.universe/perception/compare_map_segmentation/src/compare_elevation_map_filter_node.cpp bind 51 std::bind( \n", - "/universe/autoware.universe/map/map_loader/src/lanelet2_map_loader/lanelet2_map_visualization_node.cpp create_subscription 75 sub_map_bin_ = this->create_subscription<autoware_auto_mapping_msgs::msg::HADMapBin>( \n", - "/universe/autoware.universe/map/map_loader/src/lanelet2_map_loader/lanelet2_map_visualization_node.cpp bind 77 std::bind(&Lanelet2MapVisualizationNode::onMapBin, this, _1)); \n", - "/universe/autoware.universe/perception/map_based_prediction/src/map_based_prediction_node.cpp create_subscription 84 sub_objects_ = this->create_subscription<TrackedObjects>( \n", - "/universe/autoware.universe/perception/map_based_prediction/src/map_based_prediction_node.cpp bind 86 std::bind(&MapBasedPredictionNode::objectsCallback, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/perception/map_based_prediction/src/map_based_prediction_node.cpp create_subscription 87 sub_map_ = this->create_subscription<HADMapBin>( \n", - "/universe/autoware.universe/perception/map_based_prediction/src/map_based_prediction_node.cpp bind 89 std::bind(&MapBasedPredictionNode::mapCallback, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/common/tier4_debug_tools/scripts/pose2tf.py create_subscription 32 self._sub_pose = self.create_subscription( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/common/tier4_debug_tools/scripts/pose2tf.py#create_subscription@32\n", - "/universe/autoware.universe/common/tier4_debug_tools/scripts/stop_reason2pose.py create_subscription 34 self._sub_pose = self.create_subscription( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/common/tier4_debug_tools/scripts/stop_reason2pose.py#create_subscription@34\n", - "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp create_subscription 52 sub_local_control_cmd_ = create_subscription<ExternalControlCommand>( \n", - "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp bind 53 \"~/input/local/control_cmd\", 1, std::bind(&ExternalCmdSelector::onLocalControlCmd, this, _1), \n", - "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp create_subscription 55 sub_local_shift_cmd_ = create_subscription<ExternalGearShift>( \n", - "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp bind 56 \"~/input/local/shift_cmd\", 1, std::bind(&ExternalCmdSelector::onLocalShiftCmd, this, _1), \n", - "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp create_subscription 58 sub_local_turn_signal_cmd_ = create_subscription<ExternalTurnSignal>( \n", - "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp bind 60 std::bind(&ExternalCmdSelector::onLocalTurnSignalCmd, this, _1), subscriber_option); \n", - "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp create_subscription 61 sub_local_heartbeat_ = create_subscription<ExternalHeartbeat>( \n", - "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp bind 62 \"~/input/local/heartbeat\", 1, std::bind(&ExternalCmdSelector::onLocalHeartbeat, this, _1), \n", - "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp create_subscription 65 sub_remote_control_cmd_ = create_subscription<ExternalControlCommand>( \n", - "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp bind 66 \"~/input/remote/control_cmd\", 1, std::bind(&ExternalCmdSelector::onRemoteControlCmd, this, _1), \n", - "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp create_subscription 68 sub_remote_shift_cmd_ = create_subscription<ExternalGearShift>( \n", - "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp bind 69 \"~/input/remote/shift_cmd\", 1, std::bind(&ExternalCmdSelector::onRemoteShiftCmd, this, _1), \n", - "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp create_subscription 71 sub_remote_turn_signal_cmd_ = create_subscription<ExternalTurnSignal>( \n", - "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp bind 73 std::bind(&ExternalCmdSelector::onRemoteTurnSignalCmd, this, _1), subscriber_option); \n", - "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp create_subscription 74 sub_remote_heartbeat_ = create_subscription<ExternalHeartbeat>( \n", - "/universe/autoware.universe/control/external_cmd_selector/src/external_cmd_selector/external_cmd_selector_node.cpp bind 75 \"~/input/remote/heartbeat\", 1, std::bind(&ExternalCmdSelector::onRemoteHeartbeat, this, _1), \n", - "/universe/autoware.universe/vehicle/accel_brake_map_calibrator/accel_brake_map_calibrator/test/sim_actuation_status_publisher.py create_subscription 39 self.sub = self.create_subscription( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/vehicle/accel_brake_map_calibrator/accel_brake_map_calibrator/test/sim_actuation_status_publisher.py#create_subscription@39\n", - "/universe/autoware.universe/planning/rtc_auto_approver/src/rtc_auto_approver_interface.cpp create_subscription 26 status_sub_ = node->create_subscription<CooperateStatusArray>( \n", - "/universe/autoware.universe/planning/rtc_auto_approver/src/rtc_auto_approver_interface.cpp bind 28 std::bind(&RTCAutoApproverInterface::onStatus, this, _1)); \n", - "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_latlon_muxer_node.cpp create_subscription 54 this->create_subscription<ControlCommand>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_latlon_muxer_node.cpp#create_subscription@54\n", - "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_latlon_muxer_node.cpp create_subscription 100 this->create_subscription<ControlCommand>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_latlon_muxer_node.cpp#create_subscription@100\n", - "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_latlon_muxer_node.cpp create_subscription 136 this->create_subscription<ControlCommand>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_latlon_muxer_node.cpp#create_subscription@136\n", - "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_latlon_muxer_node.cpp create_subscription 172 this->create_subscription<ControlCommand>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_latlon_muxer_node.cpp#create_subscription@172\n", - "/universe/autoware.universe/vehicle/accel_brake_map_calibrator/accel_brake_map_calibrator/src/accel_brake_map_calibrator_node.cpp create_subscription 188 velocity_sub_ = create_subscription<autoware_auto_vehicle_msgs::msg::VelocityReport>( \n", - "/universe/autoware.universe/vehicle/accel_brake_map_calibrator/accel_brake_map_calibrator/src/accel_brake_map_calibrator_node.cpp bind 190 std::bind(&AccelBrakeMapCalibrator::callbackVelocity, this, _1)); \n", - "/universe/autoware.universe/vehicle/accel_brake_map_calibrator/accel_brake_map_calibrator/src/accel_brake_map_calibrator_node.cpp create_subscription 191 steer_sub_ = create_subscription<autoware_auto_vehicle_msgs::msg::SteeringReport>( \n", - "/universe/autoware.universe/vehicle/accel_brake_map_calibrator/accel_brake_map_calibrator/src/accel_brake_map_calibrator_node.cpp bind 192 \"~/input/steer\", queue_size, std::bind(&AccelBrakeMapCalibrator::callbackSteer, this, _1)); \n", - "/universe/autoware.universe/vehicle/accel_brake_map_calibrator/accel_brake_map_calibrator/src/accel_brake_map_calibrator_node.cpp create_subscription 193 actuation_status_sub_ = create_subscription<tier4_vehicle_msgs::msg::ActuationStatusStamped>( \n", - "/universe/autoware.universe/vehicle/accel_brake_map_calibrator/accel_brake_map_calibrator/src/accel_brake_map_calibrator_node.cpp bind 195 std::bind(&AccelBrakeMapCalibrator::callbackActuationStatus, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/route.cpp create_subscription 90 sub_planning_route_ = create_subscription<autoware_auto_planning_msgs::msg::HADMapRoute>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/route.cpp bind 92 std::bind(&Route::onRoute, this, _1)); \n", - "/universe/autoware.universe/perception/compare_map_segmentation/src/voxel_based_approximate_compare_map_filter_nodelet.cpp create_subscription 46 sub_map_ = this->create_subscription<PointCloud2>( \n", - "/universe/autoware.universe/perception/compare_map_segmentation/src/voxel_based_approximate_compare_map_filter_nodelet.cpp bind 48 std::bind(&VoxelBasedApproximateCompareMapFilterComponent::input_target_callback, this, _1)); \n", - "/universe/external/grid_map/grid_map_demos/src/FiltersDemo.cpp create_subscription 26 subscriber_ = this->create_subscription<grid_map_msgs::msg::GridMap>( \n", - "/universe/external/grid_map/grid_map_demos/src/FiltersDemo.cpp bind 28 std::bind(&FiltersDemo::callback, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp create_subscription 78 this->create_subscription<LongitudinalCommand>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp#create_subscription@78\n", - "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp create_subscription 150 this->create_subscription<LongitudinalCommand>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp#create_subscription@150\n", - "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp create_subscription 222 this->create_subscription<LongitudinalCommand>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp#create_subscription@222\n", - "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp create_subscription 294 this->create_subscription<LongitudinalCommand>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp#create_subscription@294\n", - "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp create_subscription 358 this->create_subscription<LongitudinalCommand>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp#create_subscription@358\n", - "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp create_subscription 422 this->create_subscription<LongitudinalCommand>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_longitudinal_controller_node.cpp#create_subscription@422\n", - "/universe/autoware.universe/localization/ekf_localizer/src/ekf_localizer.cpp create_subscription 93 sub_initialpose_ = create_subscription<geometry_msgs::msg::PoseWithCovarianceStamped>( \n", - "/universe/autoware.universe/localization/ekf_localizer/src/ekf_localizer.cpp bind 94 \"initialpose\", 1, std::bind(&EKFLocalizer::callbackInitialPose, this, _1)); \n", - "/universe/autoware.universe/localization/ekf_localizer/src/ekf_localizer.cpp create_subscription 95 sub_pose_with_cov_ = create_subscription<geometry_msgs::msg::PoseWithCovarianceStamped>( \n", - "/universe/autoware.universe/localization/ekf_localizer/src/ekf_localizer.cpp bind 96 \"in_pose_with_covariance\", 1, std::bind(&EKFLocalizer::callbackPoseWithCovariance, this, _1)); \n", - "/universe/autoware.universe/localization/ekf_localizer/src/ekf_localizer.cpp create_subscription 97 sub_twist_with_cov_ = create_subscription<geometry_msgs::msg::TwistWithCovarianceStamped>( \n", - "/universe/autoware.universe/localization/ekf_localizer/src/ekf_localizer.cpp bind 98 \"in_twist_with_covariance\", 1, std::bind(&EKFLocalizer::callbackTwistWithCovariance, this, _1)); \n", - "/universe/autoware.universe/planning/obstacle_cruise_planner/scripts/trajectory_visualizer.py create_subscription 68 self.sub_localization_twist = self.create_subscription( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/obstacle_cruise_planner/scripts/trajectory_visualizer.py#create_subscription@68\n", - "/universe/autoware.universe/planning/obstacle_cruise_planner/scripts/trajectory_visualizer.py create_subscription 71 self.sub_vehicle_twist = self.create_subscription( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/obstacle_cruise_planner/scripts/trajectory_visualizer.py#create_subscription@71\n", - "/universe/autoware.universe/common/tier4_traffic_light_rviz_plugin/src/traffic_light_publish_panel.cpp create_subscription 223 sub_vector_map_ = raw_node_->create_subscription<HADMapBin>( \n", - "/universe/autoware.universe/common/tier4_traffic_light_rviz_plugin/src/traffic_light_publish_panel.cpp bind 225 std::bind(&TrafficLightPublishPanel::onVectorMap, this, _1)); \n", - "/universe/autoware.universe/planning/mission_planner/src/mission_planner_lanelet2/mission_planner_lanelet2.cpp create_subscription 132 map_subscriber_ = create_subscription<autoware_auto_mapping_msgs::msg::HADMapBin>( \n", - "/universe/autoware.universe/planning/mission_planner/src/mission_planner_lanelet2/mission_planner_lanelet2.cpp bind 134 std::bind(&MissionPlannerLanelet2::mapCallback, this, _1)); \n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/scene_module/run_out/dynamic_obstacle.cpp create_subscription 151 sub_compare_map_filtered_pointcloud_ = node.create_subscription<sensor_msgs::msg::PointCloud2>( \n", - "/universe/autoware.universe/planning/behavior_velocity_planner/src/scene_module/run_out/dynamic_obstacle.cpp bind 153 std::bind(&DynamicObstacleCreatorForPoints::onCompareMapFilteredPointCloud, this, _1)); \n", - "/universe/autoware.universe/sensing/image_transport_decompressor/src/image_transport_decompressor.cpp create_subscription 69 compressed_image_sub_ = create_subscription<sensor_msgs::msg::CompressedImage>( \n", - "/universe/autoware.universe/sensing/image_transport_decompressor/src/image_transport_decompressor.cpp bind 71 std::bind(&ImageTransportDecompressor::onCompressedImage, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/planning/freespace_planner/src/freespace_planner/freespace_planner_node.cpp create_subscription 234 route_sub_ = create_subscription<HADMapRoute>( \n", - "/universe/autoware.universe/planning/freespace_planner/src/freespace_planner/freespace_planner_node.cpp bind 236 std::bind(&FreespacePlannerNode::onRoute, this, _1)); \n", - "/universe/autoware.universe/planning/freespace_planner/src/freespace_planner/freespace_planner_node.cpp create_subscription 237 occupancy_grid_sub_ = create_subscription<OccupancyGrid>( \n", - "/universe/autoware.universe/planning/freespace_planner/src/freespace_planner/freespace_planner_node.cpp bind 238 \"~/input/occupancy_grid\", 1, std::bind(&FreespacePlannerNode::onOccupancyGrid, this, _1)); \n", - "/universe/autoware.universe/planning/freespace_planner/src/freespace_planner/freespace_planner_node.cpp create_subscription 239 scenario_sub_ = create_subscription<Scenario>( \n", - "/universe/autoware.universe/planning/freespace_planner/src/freespace_planner/freespace_planner_node.cpp bind 240 \"~/input/scenario\", 1, std::bind(&FreespacePlannerNode::onScenario, this, _1)); \n", - "/universe/autoware.universe/planning/freespace_planner/src/freespace_planner/freespace_planner_node.cpp create_subscription 241 odom_sub_ = create_subscription<Odometry>( \n", - "/universe/autoware.universe/planning/freespace_planner/src/freespace_planner/freespace_planner_node.cpp bind 242 \"~/input/odometry\", 100, std::bind(&FreespacePlannerNode::onOdometry, this, _1)); \n", - "/universe/autoware.universe/planning/scenario_selector/src/scenario_selector_node/scenario_selector_node.cpp create_subscription 328 this->create_subscription<autoware_auto_planning_msgs::msg::Trajectory>( \n", - "/universe/autoware.universe/planning/scenario_selector/src/scenario_selector_node/scenario_selector_node.cpp bind 330 std::bind(&ScenarioSelectorNode::onLaneDrivingTrajectory, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/planning/scenario_selector/src/scenario_selector_node/scenario_selector_node.cpp create_subscription 332 sub_parking_trajectory_ = this->create_subscription<autoware_auto_planning_msgs::msg::Trajectory>( \n", - "/universe/autoware.universe/planning/scenario_selector/src/scenario_selector_node/scenario_selector_node.cpp bind 334 std::bind(&ScenarioSelectorNode::onParkingTrajectory, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/planning/scenario_selector/src/scenario_selector_node/scenario_selector_node.cpp create_subscription 336 sub_lanelet_map_ = this->create_subscription<autoware_auto_mapping_msgs::msg::HADMapBin>( \n", - "/universe/autoware.universe/planning/scenario_selector/src/scenario_selector_node/scenario_selector_node.cpp bind 338 std::bind(&ScenarioSelectorNode::onMap, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/planning/scenario_selector/src/scenario_selector_node/scenario_selector_node.cpp create_subscription 339 sub_route_ = this->create_subscription<autoware_auto_planning_msgs::msg::HADMapRoute>( \n", - "/universe/autoware.universe/planning/scenario_selector/src/scenario_selector_node/scenario_selector_node.cpp bind 341 std::bind(&ScenarioSelectorNode::onRoute, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/planning/scenario_selector/src/scenario_selector_node/scenario_selector_node.cpp create_subscription 342 sub_odom_ = this->create_subscription<nav_msgs::msg::Odometry>( \n", - "/universe/autoware.universe/planning/scenario_selector/src/scenario_selector_node/scenario_selector_node.cpp bind 344 std::bind(&ScenarioSelectorNode::onOdom, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/perception/compare_map_segmentation/src/voxel_based_compare_map_filter_nodelet.cpp create_subscription 45 sub_map_ = this->create_subscription<PointCloud2>( \n", - "/universe/autoware.universe/perception/compare_map_segmentation/src/voxel_based_compare_map_filter_nodelet.cpp bind 47 std::bind(&VoxelBasedCompareMapFilterComponent::input_target_callback, this, _1)); \n", - "/universe/autoware.universe/common/fake_test_node/design/fake_test_node-design.md create_subscription 45 auto result_odom_subscription = create_subscription<Bool>(\"/output_topic\", *node, \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/common/fake_test_node/design/fake_test_node-design.md#create_subscription@45\n", - "/universe/autoware.universe/perception/traffic_light_map_based_detector/src/node.cpp create_subscription 98 map_sub_ = create_subscription<autoware_auto_mapping_msgs::msg::HADMapBin>( \n", - "/universe/autoware.universe/perception/traffic_light_map_based_detector/src/node.cpp bind 100 std::bind(&MapBasedDetector::mapCallback, this, _1)); \n", - "/universe/autoware.universe/perception/traffic_light_map_based_detector/src/node.cpp create_subscription 101 camera_info_sub_ = create_subscription<sensor_msgs::msg::CameraInfo>( \n", - "/universe/autoware.universe/perception/traffic_light_map_based_detector/src/node.cpp bind 103 std::bind(&MapBasedDetector::cameraInfoCallback, this, _1)); \n", - "/universe/autoware.universe/perception/traffic_light_map_based_detector/src/node.cpp create_subscription 104 route_sub_ = create_subscription<autoware_auto_planning_msgs::msg::HADMapRoute>( \n", - "/universe/autoware.universe/perception/traffic_light_map_based_detector/src/node.cpp bind 106 std::bind(&MapBasedDetector::routeCallback, this, _1)); \n", - "/universe/autoware.universe/perception/object_range_splitter/src/node.cpp create_subscription 23 sub_ = this->create_subscription<autoware_auto_perception_msgs::msg::DetectedObjects>( \n", - "/universe/autoware.universe/perception/object_range_splitter/src/node.cpp bind 24 \"input/object\", rclcpp::QoS{1}, std::bind(&ObjectRangeSplitterNode::objectCallback, this, _1)); \n", - "/universe/autoware.universe/planning/costmap_generator/nodes/costmap_generator/costmap_generator_node.cpp create_subscription 197 sub_objects_ = this->create_subscription<autoware_auto_perception_msgs::msg::PredictedObjects>( \n", - "/universe/autoware.universe/planning/costmap_generator/nodes/costmap_generator/costmap_generator_node.cpp bind 198 \"~/input/objects\", 1, std::bind(&CostmapGenerator::onObjects, this, _1)); \n", - "/universe/autoware.universe/planning/costmap_generator/nodes/costmap_generator/costmap_generator_node.cpp create_subscription 199 sub_points_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", - "/universe/autoware.universe/planning/costmap_generator/nodes/costmap_generator/costmap_generator_node.cpp bind 201 std::bind(&CostmapGenerator::onPoints, this, _1)); \n", - "/universe/autoware.universe/planning/costmap_generator/nodes/costmap_generator/costmap_generator_node.cpp create_subscription 202 sub_lanelet_bin_map_ = this->create_subscription<autoware_auto_mapping_msgs::msg::HADMapBin>( \n", - "/universe/autoware.universe/planning/costmap_generator/nodes/costmap_generator/costmap_generator_node.cpp bind 204 std::bind(&CostmapGenerator::onLaneletMapBin, this, _1)); \n", - "/universe/autoware.universe/planning/costmap_generator/nodes/costmap_generator/costmap_generator_node.cpp create_subscription 205 sub_scenario_ = this->create_subscription<tier4_planning_msgs::msg::Scenario>( \n", - "/universe/autoware.universe/planning/costmap_generator/nodes/costmap_generator/costmap_generator_node.cpp bind 206 \"~/input/scenario\", 1, std::bind(&CostmapGenerator::onScenario, this, _1)); \n", - "/universe/autoware.universe/vehicle/raw_vehicle_cmd_converter/src/node.cpp create_subscription 86 sub_control_cmd_ = create_subscription<AckermannControlCommand>( \n", - "/universe/autoware.universe/vehicle/raw_vehicle_cmd_converter/src/node.cpp bind 87 \"~/input/control_cmd\", 1, std::bind(&RawVehicleCommandConverterNode::onControlCmd, this, _1)); \n", - "/universe/autoware.universe/vehicle/raw_vehicle_cmd_converter/src/node.cpp create_subscription 88 sub_velocity_ = create_subscription<Odometry>( \n", - "/universe/autoware.universe/vehicle/raw_vehicle_cmd_converter/src/node.cpp bind 89 \"~/input/odometry\", 1, std::bind(&RawVehicleCommandConverterNode::onVelocity, this, _1)); \n", - "/universe/autoware.universe/vehicle/raw_vehicle_cmd_converter/src/node.cpp create_subscription 90 sub_steering_ = create_subscription<Steering>( \n", - "/universe/autoware.universe/vehicle/raw_vehicle_cmd_converter/src/node.cpp bind 91 \"~/input/steering\", 1, std::bind(&RawVehicleCommandConverterNode::onSteering, this, _1)); \n", - "/sensor_component/external/velodyne_vls/velodyne_pointcloud/src/conversions/convert.cc create_subscription 150 this->create_subscription<velodyne_msgs::msg::VelodyneScan>( \n", - "/sensor_component/external/velodyne_vls/velodyne_pointcloud/src/conversions/convert.cc bind 152 std::bind(&Convert::processScan, this, std::placeholders::_1)); \n", - "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp create_subscription 68 control_cmd_sub_ = create_subscription<autoware_auto_control_msgs::msg::AckermannControlCommand>( \n", - "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp bind 69 \"/control/command/control_cmd\", 1, std::bind(&PacmodInterface::callbackControlCmd, this, _1)); \n", - "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp create_subscription 70 gear_cmd_sub_ = create_subscription<autoware_auto_vehicle_msgs::msg::GearCommand>( \n", - "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp bind 71 \"/control/command/gear_cmd\", 1, std::bind(&PacmodInterface::callbackGearCmd, this, _1)); \n", - "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp create_subscription 73 create_subscription<autoware_auto_vehicle_msgs::msg::TurnIndicatorsCommand>( \n", - "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp bind 75 std::bind(&PacmodInterface::callbackTurnIndicatorsCommand, this, _1)); \n", - "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp create_subscription 77 create_subscription<autoware_auto_vehicle_msgs::msg::HazardLightsCommand>( \n", - "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp bind 79 std::bind(&PacmodInterface::callbackHazardLightsCommand, this, _1)); \n", - "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp create_subscription 80 engage_cmd_sub_ = create_subscription<autoware_auto_vehicle_msgs::msg::Engage>( \n", - "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp bind 81 \"/vehicle/engage\", rclcpp::QoS{1}, std::bind(&PacmodInterface::callbackEngage, this, _1)); \n", - "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp create_subscription 82 actuation_cmd_sub_ = create_subscription<ActuationCommandStamped>( \n", - "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp bind 84 std::bind(&PacmodInterface::callbackActuationCmd, this, _1)); \n", - "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp create_subscription 85 emergency_sub_ = create_subscription<tier4_vehicle_msgs::msg::VehicleEmergencyStamped>( \n", - "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_interface.cpp bind 87 std::bind(&PacmodInterface::callbackEmergencyCmd, this, _1)); \n", - "/universe/autoware.universe/planning/planning_evaluator/src/planning_evaluator_node.cpp create_subscription 33 traj_sub_ = create_subscription<Trajectory>( \n", - "/universe/autoware.universe/planning/planning_evaluator/src/planning_evaluator_node.cpp bind 34 \"~/input/trajectory\", 1, std::bind(&PlanningEvaluatorNode::onTrajectory, this, _1)); \n", - "/universe/autoware.universe/planning/planning_evaluator/src/planning_evaluator_node.cpp create_subscription 36 ref_sub_ = create_subscription<Trajectory>( \n", - "/universe/autoware.universe/planning/planning_evaluator/src/planning_evaluator_node.cpp bind 38 std::bind(&PlanningEvaluatorNode::onReferenceTrajectory, this, _1)); \n", - "/universe/autoware.universe/planning/planning_evaluator/src/planning_evaluator_node.cpp create_subscription 40 objects_sub_ = create_subscription<PredictedObjects>( \n", - "/universe/autoware.universe/planning/planning_evaluator/src/planning_evaluator_node.cpp bind 41 \"~/input/objects\", 1, std::bind(&PlanningEvaluatorNode::onObjects, this, _1)); \n", - "/sensor_component/external/tamagawa_imu_driver/src/tag_serial_driver.cpp create_subscription 145 rclcpp::Subscription<std_msgs::msg::Int32>::SharedPtr sub1 = node->create_subscription<std_msgs::msg::Int32>(\"receive_ver_req\", 10, receive_ver_req);\n", - "[WARN] Could not find matching bind statement for /sensor_component/external/tamagawa_imu_driver/src/tag_serial_driver.cpp#create_subscription@145\n", - "/sensor_component/external/tamagawa_imu_driver/src/tag_serial_driver.cpp create_subscription 146 rclcpp::Subscription<std_msgs::msg::Int32>::SharedPtr sub2 = node->create_subscription<std_msgs::msg::Int32>(\"receive_offset_cancel_req\", 10, receive_offset_cancel_req);\n", - "[WARN] Could not find matching bind statement for /sensor_component/external/tamagawa_imu_driver/src/tag_serial_driver.cpp#create_subscription@146\n", - "/sensor_component/external/tamagawa_imu_driver/src/tag_serial_driver.cpp create_subscription 147 rclcpp::Subscription<std_msgs::msg::Int32>::SharedPtr sub3 = node->create_subscription<std_msgs::msg::Int32>(\"receive_heading_reset_req\", 10, receive_heading_reset_req);\n", - "[WARN] Could not find matching bind statement for /sensor_component/external/tamagawa_imu_driver/src/tag_serial_driver.cpp#create_subscription@147\n", - "/universe/autoware.universe/perception/compare_map_segmentation/src/voxel_distance_based_compare_map_filter_nodelet.cpp create_subscription 33 sub_map_ = this->create_subscription<PointCloud2>( \n", - "/universe/autoware.universe/perception/compare_map_segmentation/src/voxel_distance_based_compare_map_filter_nodelet.cpp bind 35 std::bind(&VoxelDistanceBasedCompareMapFilterComponent::input_target_callback, this, _1)); \n", - "/universe/autoware.universe/control/pure_pursuit/src/pure_pursuit/pure_pursuit_node.cpp create_subscription 76 sub_trajectory_ = this->create_subscription<autoware_auto_planning_msgs::msg::Trajectory>( \n", - "/universe/autoware.universe/control/pure_pursuit/src/pure_pursuit/pure_pursuit_node.cpp bind 77 \"input/reference_trajectory\", 1, std::bind(&PurePursuitNode::onTrajectory, this, _1)); \n", - "/universe/autoware.universe/control/pure_pursuit/src/pure_pursuit/pure_pursuit_node.cpp create_subscription 78 sub_current_odometry_ = this->create_subscription<nav_msgs::msg::Odometry>( \n", - "/universe/autoware.universe/control/pure_pursuit/src/pure_pursuit/pure_pursuit_node.cpp bind 79 \"input/current_odometry\", 1, std::bind(&PurePursuitNode::onCurrentOdometry, this, _1)); \n", - "/universe/autoware.universe/sensing/imu_corrector/src/imu_corrector_core.cpp create_subscription 29 imu_sub_ = create_subscription<sensor_msgs::msg::Imu>( \n", - "/universe/autoware.universe/sensing/imu_corrector/src/imu_corrector_core.cpp bind 30 \"input\", rclcpp::QoS{1}, std::bind(&ImuCorrector::callbackImu, this, std::placeholders::_1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/door.cpp create_subscription 33 sub_door_status_ = create_subscription<tier4_api_msgs::msg::DoorStatus>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/door.cpp bind 34 \"/vehicle/status/door_status\", rclcpp::QoS(1), std::bind(&Door::getDoorStatus, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/operator.cpp create_subscription 47 sub_external_select_ = create_subscription<tier4_control_msgs::msg::ExternalCommandSelectorMode>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/operator.cpp bind 49 std::bind(&Operator::onExternalSelect, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/operator.cpp create_subscription 50 sub_gate_mode_ = create_subscription<tier4_control_msgs::msg::GateMode>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/operator.cpp bind 51 \"/control/current_gate_mode\", rclcpp::QoS(1), std::bind(&Operator::onGateMode, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/operator.cpp create_subscription 53 create_subscription<autoware_auto_vehicle_msgs::msg::ControlModeReport>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_internal_api_adaptor/src/operator.cpp bind 55 std::bind(&Operator::onVehicleControlMode, this, _1)); \n", - "/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp create_subscription 218 initial_pose_sub_ = this->create_subscription<geometry_msgs::msg::PoseWithCovarianceStamped>( \n", - "/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp bind 220 std::bind(&NDTScanMatcher::callbackInitialPose, this, std::placeholders::_1), \n", - "/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp create_subscription 222 map_points_sub_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", - "/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp bind 224 std::bind(&NDTScanMatcher::callbackMapPoints, this, std::placeholders::_1), main_sub_opt); \n", - "/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp create_subscription 225 sensor_points_sub_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", - "/universe/autoware.universe/localization/ndt_scan_matcher/src/ndt_scan_matcher_core.cpp bind 227 std::bind(&NDTScanMatcher::callbackSensorPoints, this, std::placeholders::_1), main_sub_opt); \n", - "/universe/autoware.universe/control/shift_decider/src/shift_decider.cpp create_subscription 34 sub_control_cmd_ = create_subscription<autoware_auto_control_msgs::msg::AckermannControlCommand>( \n", - "/universe/autoware.universe/control/shift_decider/src/shift_decider.cpp bind 35 \"input/control_cmd\", queue_size, std::bind(&ShiftDecider::onControlCmd, this, _1)); \n", - "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/distortion_corrector/distortion_corrector.cpp create_subscription 44 velocity_report_sub_ = this->create_subscription<VelocityReport>( \n", - "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/distortion_corrector/distortion_corrector.cpp bind 46 std::bind(&DistortionCorrectorComponent::onVelocityReport, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/distortion_corrector/distortion_corrector.cpp create_subscription 47 input_points_sub_ = this->create_subscription<PointCloud2>( \n", - "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/distortion_corrector/distortion_corrector.cpp bind 49 std::bind(&DistortionCorrectorComponent::onPointCloud, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/common/goal_distance_calculator/src/goal_distance_calculator_node.cpp create_subscription 50 sub_route_ = create_subscription<autoware_auto_planning_msgs::msg::Route>( \n", - "/universe/autoware.universe/common/goal_distance_calculator/src/goal_distance_calculator_node.cpp bind 60 this, get_clock(), period_ns, std::bind(&GoalDistanceCalculatorNode::onTimer, this)); \n", - "/universe/autoware.universe/system/system_monitor/test/src/gpu_monitor/test_nvml_gpu_monitor.cpp create_subscription 95 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", - "/universe/autoware.universe/system/system_monitor/test/src/gpu_monitor/test_nvml_gpu_monitor.cpp bind 96 \"/diagnostics\", 1000, std::bind(&TestGPUMonitor::diagCallback, monitor_.get(), _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp create_subscription 82 sub_velocity_ = create_subscription<autoware_auto_vehicle_msgs::msg::VelocityReport>( \n", - "[WARN] Could not find matching bind statement for /universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp#create_subscription@82\n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp create_subscription 87 sub_steering_ = create_subscription<autoware_auto_vehicle_msgs::msg::SteeringReport>( \n", - "[WARN] Could not find matching bind statement for /universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp#create_subscription@87\n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp create_subscription 92 sub_turn_indicators_ = create_subscription<autoware_auto_vehicle_msgs::msg::TurnIndicatorsReport>( \n", - "[WARN] Could not find matching bind statement for /universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp#create_subscription@92\n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp create_subscription 97 sub_hazard_lights_ = create_subscription<autoware_auto_vehicle_msgs::msg::HazardLightsReport>( \n", - "[WARN] Could not find matching bind statement for /universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp#create_subscription@97\n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp create_subscription 102 sub_gear_shift_ = create_subscription<autoware_auto_vehicle_msgs::msg::GearReport>( \n", - "[WARN] Could not find matching bind statement for /universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp#create_subscription@102\n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp create_subscription 110 sub_cmd_ = create_subscription<autoware_auto_control_msgs::msg::AckermannControlCommand>( \n", - "[WARN] Could not find matching bind statement for /universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/vehicle_status.cpp#create_subscription@110\n", - "/universe/autoware.universe/localization/localization_error_monitor/src/node.cpp create_subscription 44 pose_with_cov_sub_ = this->create_subscription<geometry_msgs::msg::PoseWithCovarianceStamped>( \n", - "/universe/autoware.universe/localization/localization_error_monitor/src/node.cpp bind 46 std::bind(&LocalizationErrorMonitor::onPoseWithCovariance, this, std::placeholders::_1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/engage.cpp create_subscription 37 sub_engage_status_ = create_subscription<autoware_auto_vehicle_msgs::msg::Engage>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/engage.cpp bind 38 \"/api/autoware/get/engage\", rclcpp::QoS(1), std::bind(&Engage::onEngageStatus, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/engage.cpp create_subscription 39 sub_autoware_state_ = create_subscription<autoware_auto_system_msgs::msg::AutowareState>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/engage.cpp bind 40 \"/autoware/state\", rclcpp::QoS(1), std::bind(&Engage::onAutowareState, this, _1)); \n", - "/universe/autoware.universe/system/system_monitor/test/src/process_monitor/test_process_monitor.cpp create_subscription 104 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", - "/universe/autoware.universe/system/system_monitor/test/src/process_monitor/test_process_monitor.cpp bind 105 \"/diagnostics\", 1000, std::bind(&TestProcessMonitor::diagCallback, monitor_.get(), _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/calibration_status.cpp create_subscription 46 create_subscription<tier4_external_api_msgs::msg::CalibrationStatus>( \n", - "[WARN] Could not find matching bind statement for /universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/calibration_status.cpp#create_subscription@46\n", - "/sensor_component/external/velodyne_vls/velodyne_pointcloud/src/conversions/interpolate.cc create_subscription 31 velocity_report_sub_ = this->create_subscription<autoware_auto_vehicle_msgs::msg::VelocityReport>( \n", - "/sensor_component/external/velodyne_vls/velodyne_pointcloud/src/conversions/interpolate.cc bind 33 std::bind(&Interpolate::processVelocityReport, this, std::placeholders::_1)); \n", - "/sensor_component/external/velodyne_vls/velodyne_pointcloud/src/conversions/interpolate.cc create_subscription 34 velodyne_points_ex_sub_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", - "/sensor_component/external/velodyne_vls/velodyne_pointcloud/src/conversions/interpolate.cc bind 35 \"velodyne_points_ex\", rclcpp::SensorDataQoS(), std::bind(&Interpolate::processPoints,this, std::placeholders::_1));\n", - "/universe/autoware.universe/control/trajectory_follower_nodes/src/longitudinal_controller_node.cpp create_subscription 171 m_sub_current_velocity = create_subscription<nav_msgs::msg::Odometry>( \n", - "/universe/autoware.universe/control/trajectory_follower_nodes/src/longitudinal_controller_node.cpp bind 173 std::bind(&LongitudinalController::callbackCurrentVelocity, this, _1)); \n", - "/universe/autoware.universe/control/trajectory_follower_nodes/src/longitudinal_controller_node.cpp create_subscription 174 m_sub_trajectory = create_subscription<autoware_auto_planning_msgs::msg::Trajectory>( \n", - "/universe/autoware.universe/control/trajectory_follower_nodes/src/longitudinal_controller_node.cpp bind 176 std::bind(&LongitudinalController::callbackTrajectory, this, _1)); \n", - "/universe/autoware.universe/planning/planning_error_monitor/src/planning_error_monitor_node.cpp create_subscription 36 traj_sub_ = create_subscription<Trajectory>( \n", - "/universe/autoware.universe/planning/planning_error_monitor/src/planning_error_monitor_node.cpp bind 37 \"~/input/trajectory\", 1, std::bind(&PlanningErrorMonitorNode::onCurrentTrajectory, this, _1)); \n", - "/universe/autoware.universe/control/control_performance_analysis/src/control_performance_analysis_node.cpp create_subscription 59 sub_trajectory_ = create_subscription<Trajectory>( \n", - "/universe/autoware.universe/control/control_performance_analysis/src/control_performance_analysis_node.cpp bind 61 std::bind(&ControlPerformanceAnalysisNode::onTrajectory, this, _1)); \n", - "/universe/autoware.universe/control/control_performance_analysis/src/control_performance_analysis_node.cpp create_subscription 63 sub_control_cmd_ = create_subscription<AckermannControlCommand>( \n", - "/universe/autoware.universe/control/control_performance_analysis/src/control_performance_analysis_node.cpp bind 64 \"~/input/control_raw\", 1, std::bind(&ControlPerformanceAnalysisNode::onControlRaw, this, _1)); \n", - "/universe/autoware.universe/control/control_performance_analysis/src/control_performance_analysis_node.cpp create_subscription 66 sub_vehicle_steering_ = create_subscription<SteeringReport>( \n", - "/universe/autoware.universe/control/control_performance_analysis/src/control_performance_analysis_node.cpp bind 68 std::bind(&ControlPerformanceAnalysisNode::onVecSteeringMeasured, this, _1)); \n", - "/universe/autoware.universe/control/control_performance_analysis/src/control_performance_analysis_node.cpp create_subscription 70 sub_velocity_ = create_subscription<Odometry>( \n", - "/universe/autoware.universe/control/control_performance_analysis/src/control_performance_analysis_node.cpp bind 71 \"~/input/odometry\", 1, std::bind(&ControlPerformanceAnalysisNode::onVelocity, this, _1)); \n", - "/universe/autoware.universe/system/system_monitor/test/src/cpu_monitor/test_unknown_cpu_monitor.cpp create_subscription 61 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", - "/universe/autoware.universe/system/system_monitor/test/src/cpu_monitor/test_unknown_cpu_monitor.cpp bind 62 \"/diagnostics\", 1000, std::bind(&TestCPUMonitor::diagCallback, monitor_.get(), _1)); \n", - "/universe/autoware.universe/sensing/image_diagnostics/src/image_diagnostics_node.cpp create_subscription 24 image_sub_ = create_subscription<sensor_msgs::msg::Image>( \n", - "/universe/autoware.universe/sensing/image_diagnostics/src/image_diagnostics_node.cpp bind 26 std::bind(&ImageDiagNode::ImageChecker, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/common/tier4_debug_tools/src/lateral_error_publisher.cpp create_subscription 28 sub_trajectory_ = create_subscription<autoware_auto_planning_msgs::msg::Trajectory>( \n", - "/universe/autoware.universe/common/tier4_debug_tools/src/lateral_error_publisher.cpp bind 30 std::bind(&LateralErrorPublisher::onTrajectory, this, _1)); \n", - "/universe/autoware.universe/common/tier4_debug_tools/src/lateral_error_publisher.cpp create_subscription 31 sub_vehicle_pose_ = create_subscription<geometry_msgs::msg::PoseWithCovarianceStamped>( \n", - "/universe/autoware.universe/common/tier4_debug_tools/src/lateral_error_publisher.cpp bind 33 std::bind(&LateralErrorPublisher::onVehiclePose, this, _1)); \n", - "/universe/autoware.universe/common/tier4_debug_tools/src/lateral_error_publisher.cpp create_subscription 34 sub_ground_truth_pose_ = create_subscription<geometry_msgs::msg::PoseWithCovarianceStamped>( \n", - "/universe/autoware.universe/common/tier4_debug_tools/src/lateral_error_publisher.cpp bind 36 std::bind(&LateralErrorPublisher::onGroundTruthPose, this, _1)); \n", - "/universe/autoware.universe/planning/surround_obstacle_checker/src/node.cpp create_subscription 170 sub_pointcloud_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", - "/universe/autoware.universe/planning/surround_obstacle_checker/src/node.cpp bind 172 std::bind(&SurroundObstacleCheckerNode::onPointCloud, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/planning/surround_obstacle_checker/src/node.cpp create_subscription 173 sub_dynamic_objects_ = this->create_subscription<PredictedObjects>( \n", - "/universe/autoware.universe/planning/surround_obstacle_checker/src/node.cpp bind 175 std::bind(&SurroundObstacleCheckerNode::onDynamicObjects, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/planning/surround_obstacle_checker/src/node.cpp create_subscription 176 sub_odometry_ = this->create_subscription<nav_msgs::msg::Odometry>( \n", - "/universe/autoware.universe/planning/surround_obstacle_checker/src/node.cpp bind 178 std::bind(&SurroundObstacleCheckerNode::onOdometry, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/planning/external_velocity_limit_selector/src/external_velocity_limit_selector_node.cpp create_subscription 75 sub_external_velocity_limit_from_api_ = this->create_subscription<VelocityLimit>( \n", - "/universe/autoware.universe/planning/external_velocity_limit_selector/src/external_velocity_limit_selector_node.cpp bind 77 std::bind(&ExternalVelocityLimitSelectorNode::onVelocityLimitFromAPI, this, _1)); \n", - "/universe/autoware.universe/planning/external_velocity_limit_selector/src/external_velocity_limit_selector_node.cpp create_subscription 79 sub_external_velocity_limit_from_internal_ = this->create_subscription<VelocityLimit>( \n", - "/universe/autoware.universe/planning/external_velocity_limit_selector/src/external_velocity_limit_selector_node.cpp bind 81 std::bind(&ExternalVelocityLimitSelectorNode::onVelocityLimitFromInternal, this, _1)); \n", - "/universe/autoware.universe/planning/external_velocity_limit_selector/src/external_velocity_limit_selector_node.cpp create_subscription 83 sub_velocity_limit_clear_command_ = this->create_subscription<VelocityLimitClearCommand>( \n", - "/universe/autoware.universe/planning/external_velocity_limit_selector/src/external_velocity_limit_selector_node.cpp bind 85 std::bind(&ExternalVelocityLimitSelectorNode::onVelocityLimitClearCommand, this, _1)); \n", - "/universe/autoware.universe/system/system_monitor/test/src/cpu_monitor/test_intel_cpu_monitor.cpp create_subscription 115 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", - "/universe/autoware.universe/system/system_monitor/test/src/cpu_monitor/test_intel_cpu_monitor.cpp bind 116 \"/diagnostics\", 1000, std::bind(&TestCPUMonitor::diagCallback, monitor_.get(), _1)); \n", - "/universe/autoware.universe/system/system_monitor/test/src/net_monitor/test_net_monitor.cpp create_subscription 90 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", - "/universe/autoware.universe/system/system_monitor/test/src/net_monitor/test_net_monitor.cpp bind 91 \"/diagnostics\", 1000, std::bind(&TestNetMonitor::diagCallback, monitor_.get(), _1)); \n", - "/universe/autoware.universe/planning/obstacle_cruise_planner/src/node.cpp create_subscription 180 trajectory_sub_ = create_subscription<Trajectory>( \n", - "/universe/autoware.universe/planning/obstacle_cruise_planner/src/node.cpp bind 182 std::bind(&ObstacleCruisePlannerNode::onTrajectory, this, _1)); \n", - "/universe/autoware.universe/planning/obstacle_cruise_planner/src/node.cpp create_subscription 183 smoothed_trajectory_sub_ = create_subscription<Trajectory>( \n", - "/universe/autoware.universe/planning/obstacle_cruise_planner/src/node.cpp bind 185 std::bind(&ObstacleCruisePlannerNode::onSmoothedTrajectory, this, _1)); \n", - "/universe/autoware.universe/planning/obstacle_cruise_planner/src/node.cpp create_subscription 186 objects_sub_ = create_subscription<PredictedObjects>( \n", - "/universe/autoware.universe/planning/obstacle_cruise_planner/src/node.cpp bind 187 \"~/input/objects\", rclcpp::QoS{1}, std::bind(&ObstacleCruisePlannerNode::onObjects, this, _1)); \n", - "/universe/autoware.universe/planning/obstacle_cruise_planner/src/node.cpp create_subscription 188 odom_sub_ = create_subscription<Odometry>( \n", - "/universe/autoware.universe/planning/obstacle_cruise_planner/src/node.cpp bind 190 std::bind(&ObstacleCruisePlannerNode::onOdometry, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/vehicle/external_cmd_converter/src/node.cpp create_subscription 31 sub_velocity_ = create_subscription<Odometry>( \n", - "/universe/autoware.universe/vehicle/external_cmd_converter/src/node.cpp bind 32 \"in/odometry\", 1, std::bind(&ExternalCmdConverterNode::onVelocity, this, _1)); \n", - "/universe/autoware.universe/vehicle/external_cmd_converter/src/node.cpp create_subscription 33 sub_control_cmd_ = create_subscription<ExternalControlCommand>( \n", - "/universe/autoware.universe/vehicle/external_cmd_converter/src/node.cpp bind 34 \"in/external_control_cmd\", 1, std::bind(&ExternalCmdConverterNode::onExternalCmd, this, _1)); \n", - "/universe/autoware.universe/vehicle/external_cmd_converter/src/node.cpp create_subscription 35 sub_shift_cmd_ = create_subscription<GearCommand>( \n", - "/universe/autoware.universe/vehicle/external_cmd_converter/src/node.cpp bind 36 \"in/shift_cmd\", 1, std::bind(&ExternalCmdConverterNode::onGearCommand, this, _1)); \n", - "/universe/autoware.universe/vehicle/external_cmd_converter/src/node.cpp create_subscription 37 sub_gate_mode_ = create_subscription<tier4_control_msgs::msg::GateMode>( \n", - "/universe/autoware.universe/vehicle/external_cmd_converter/src/node.cpp bind 38 \"in/current_gate_mode\", 1, std::bind(&ExternalCmdConverterNode::onGateMode, this, _1)); \n", - "/universe/autoware.universe/vehicle/external_cmd_converter/src/node.cpp create_subscription 39 sub_emergency_stop_heartbeat_ = create_subscription<tier4_external_api_msgs::msg::Heartbeat>( \n", - "/universe/autoware.universe/vehicle/external_cmd_converter/src/node.cpp bind 41 std::bind(&ExternalCmdConverterNode::onEmergencyStopHeartbeat, this, _1)); \n", - "/universe/autoware.universe/perception/lidar_centerpoint/src/node.cpp create_subscription 86 pointcloud_sub_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", - "/universe/autoware.universe/perception/lidar_centerpoint/src/node.cpp bind 88 std::bind(&LidarCenterPointNode::pointCloudCallback, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/common/tier4_control_rviz_plugin/src/tools/manual_controller.cpp create_subscription 164 sub_gate_mode_ = raw_node_->create_subscription<GateMode>( \n", - "/universe/autoware.universe/common/tier4_control_rviz_plugin/src/tools/manual_controller.cpp bind 165 \"/control/current_gate_mode\", 10, std::bind(&ManualController::onGateMode, this, _1)); \n", - "/universe/autoware.universe/common/tier4_control_rviz_plugin/src/tools/manual_controller.cpp create_subscription 167 sub_velocity_ = raw_node_->create_subscription<VelocityReport>( \n", - "/universe/autoware.universe/common/tier4_control_rviz_plugin/src/tools/manual_controller.cpp bind 168 \"/vehicle/status/velocity_status\", 1, std::bind(&ManualController::onVelocity, this, _1)); \n", - "/universe/autoware.universe/common/tier4_control_rviz_plugin/src/tools/manual_controller.cpp create_subscription 170 sub_engage_ = raw_node_->create_subscription<Engage>( \n", - "/universe/autoware.universe/common/tier4_control_rviz_plugin/src/tools/manual_controller.cpp bind 171 \"/api/autoware/get/engage\", 10, std::bind(&ManualController::onEngageStatus, this, _1)); \n", - "/universe/autoware.universe/common/tier4_control_rviz_plugin/src/tools/manual_controller.cpp create_subscription 173 sub_gear_ = raw_node_->create_subscription<GearReport>( \n", - "/universe/autoware.universe/common/tier4_control_rviz_plugin/src/tools/manual_controller.cpp bind 174 \"/vehicle/status/gear_status\", 10, std::bind(&ManualController::onGear, this, _1)); \n", - "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp create_subscription 80 this->create_subscription<LateralCommand>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp#create_subscription@80\n", - "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp create_subscription 110 this->create_subscription<LateralCommand>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp#create_subscription@110\n", - "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp create_subscription 162 this->create_subscription<LateralCommand>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp#create_subscription@162\n", - "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp create_subscription 234 this->create_subscription<LateralCommand>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp#create_subscription@234\n", - "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp create_subscription 306 this->create_subscription<LateralCommand>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp#create_subscription@306\n", - "/universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp create_subscription 378 this->create_subscription<LateralCommand>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/control/trajectory_follower_nodes/test/test_lateral_controller_node.cpp#create_subscription@378\n", - "/universe/autoware.universe/perception/elevation_map_loader/src/elevation_map_loader_node.cpp create_subscription 84 sub_map_hash_ = create_subscription<tier4_external_api_msgs::msg::MapHash>( \n", - "/universe/autoware.universe/perception/elevation_map_loader/src/elevation_map_loader_node.cpp bind 86 std::bind(&ElevationMapLoaderNode::onMapHash, this, _1)); \n", - "/universe/autoware.universe/perception/elevation_map_loader/src/elevation_map_loader_node.cpp create_subscription 87 sub_pointcloud_map_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", - "/universe/autoware.universe/perception/elevation_map_loader/src/elevation_map_loader_node.cpp bind 89 std::bind(&ElevationMapLoaderNode::onPointcloudMap, this, _1)); \n", - "/universe/autoware.universe/perception/elevation_map_loader/src/elevation_map_loader_node.cpp create_subscription 90 sub_vector_map_ = this->create_subscription<autoware_auto_mapping_msgs::msg::HADMapBin>( \n", - "/universe/autoware.universe/perception/elevation_map_loader/src/elevation_map_loader_node.cpp bind 91 \"input/vector_map\", durable_qos, std::bind(&ElevationMapLoaderNode::onVectorMap, this, _1)); \n", - "/universe/autoware.universe/perception/euclidean_cluster/src/euclidean_cluster_node.cpp create_subscription 33 pointcloud_sub_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", - "/universe/autoware.universe/perception/euclidean_cluster/src/euclidean_cluster_node.cpp bind 35 std::bind(&EuclideanClusterNode::onPointCloud, this, _1)); \n", - "/universe/autoware.universe/planning/planning_error_monitor/src/invalid_trajectory_publisher.cpp create_subscription 29 traj_sub_ = create_subscription<Trajectory>( \n", - "/universe/autoware.universe/planning/planning_error_monitor/src/invalid_trajectory_publisher.cpp bind 31 std::bind(&InvalidTrajectoryPublisherNode::onCurrentTrajectory, this, _1)); \n", - "/universe/autoware.universe/perception/multi_object_tracker/src/multi_object_tracker_core.cpp create_subscription 167 detected_object_sub_ = create_subscription<autoware_auto_perception_msgs::msg::DetectedObjects>( \n", - "/universe/autoware.universe/perception/multi_object_tracker/src/multi_object_tracker_core.cpp bind 169 std::bind(&MultiObjectTracker::onMeasurement, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/planning/mission_planner/src/goal_pose_visualizer/goal_pose_visualizer.cpp create_subscription 21 sub_route_ = create_subscription<autoware_auto_planning_msgs::msg::HADMapRoute>( \n", - "/universe/autoware.universe/planning/mission_planner/src/goal_pose_visualizer/goal_pose_visualizer.cpp bind 23 std::bind(&GoalPoseVisualizer::echoBackRouteCallback, this, std::placeholders::_1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/route.cpp create_subscription 42 sub_get_route_ = create_subscription<tier4_external_api_msgs::msg::Route>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/route.cpp bind 44 std::bind(&Route::onRoute, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/route.cpp create_subscription 45 sub_autoware_state_ = create_subscription<autoware_auto_system_msgs::msg::AutowareState>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/route.cpp bind 46 \"/autoware/state\", rclcpp::QoS(1), std::bind(&Route::onAutowareState, this, _1)); \n", - "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_dynamic_parameter_changer/pacmod_dynamic_parameter_changer_node.cpp create_subscription 47 steer_rpt_sub_ = create_subscription<pacmod3_msgs::msg::SystemRptFloat>( \n", - "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_dynamic_parameter_changer/pacmod_dynamic_parameter_changer_node.cpp bind 49 std::bind(&PacmodDynamicParameterChangerNode::subSteerRpt, this, _1)); \n", - "/universe/autoware.universe/simulator/simple_planning_simulator/test/test_simple_planning_simulator.cpp create_subscription 49 current_odom_sub_ = create_subscription<Odometry>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/simulator/simple_planning_simulator/test/test_simple_planning_simulator.cpp#create_subscription@49\n", - "/universe/autoware.universe/system/system_monitor/test/src/hdd_monitor/test_hdd_monitor.cpp create_subscription 131 sub_ = monitor_->create_subscription<diagnostic_msgs::msg::DiagnosticArray>( \n", - "/universe/autoware.universe/system/system_monitor/test/src/hdd_monitor/test_hdd_monitor.cpp bind 132 \"/diagnostics\", 1000, std::bind(&TestHDDMonitor::diagCallback, monitor_.get(), _1)); \n", - "/universe/autoware.universe/perception/detection_by_tracker/src/detection_by_tracker_core.cpp create_subscription 204 trackers_sub_ = create_subscription<autoware_auto_perception_msgs::msg::TrackedObjects>( \n", - "/universe/autoware.universe/perception/detection_by_tracker/src/detection_by_tracker_core.cpp bind 206 std::bind(&TrackerHandler::onTrackedObjects, &tracker_handler_, std::placeholders::_1)); \n", - "/universe/autoware.universe/perception/detection_by_tracker/src/detection_by_tracker_core.cpp create_subscription 208 create_subscription<tier4_perception_msgs::msg::DetectedObjectsWithFeature>( \n", - "/universe/autoware.universe/perception/detection_by_tracker/src/detection_by_tracker_core.cpp bind 210 std::bind(&DetectionByTracker::onObjects, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/planning/planning_evaluator/src/motion_evaluator_node.cpp create_subscription 30 twist_sub_ = create_subscription<nav_msgs::msg::Odometry>( \n", - "/universe/autoware.universe/planning/planning_evaluator/src/motion_evaluator_node.cpp bind 32 std::bind(&MotionEvaluatorNode::onOdom, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/common/component_interface_utils/include/component_interface_utils/rclcpp/create_interface.hpp create_subscription 72 auto subscription = node->template create_subscription<typename SpecT::Message>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/common/component_interface_utils/include/component_interface_utils/rclcpp/create_interface.hpp#create_subscription@72\n", - "/universe/autoware.universe/planning/mission_planner/lib/mission_planner_base.cpp create_subscription 41 goal_subscriber_ = create_subscription<geometry_msgs::msg::PoseStamped>( \n", - "/universe/autoware.universe/planning/mission_planner/lib/mission_planner_base.cpp bind 42 \"input/goal_pose\", 10, std::bind(&MissionPlanner::goalPoseCallback, this, _1)); \n", - "/universe/autoware.universe/planning/mission_planner/lib/mission_planner_base.cpp create_subscription 43 checkpoint_subscriber_ = create_subscription<geometry_msgs::msg::PoseStamped>( \n", - "/universe/autoware.universe/planning/mission_planner/lib/mission_planner_base.cpp bind 44 \"input/checkpoint\", 10, std::bind(&MissionPlanner::checkpointCallback, this, _1)); \n", - "/universe/autoware.universe/perception/image_projection_based_fusion/src/fusion_node.cpp create_subscription 61 camera_info_subs_.at(roi_i) = this->create_subscription<sensor_msgs::msg::CameraInfo>( \n", - "/universe/autoware.universe/perception/image_projection_based_fusion/src/fusion_node.cpp bind 74 std::bind(&FusionNode::dummyCallback, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/control/trajectory_follower_nodes/src/latlon_muxer_node.cpp create_subscription 34 create_subscription<autoware_auto_control_msgs::msg::AckermannLateralCommand>( \n", - "/universe/autoware.universe/control/trajectory_follower_nodes/src/latlon_muxer_node.cpp bind 36 std::bind(&LatLonMuxer::latCtrlCmdCallback, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/control/trajectory_follower_nodes/src/latlon_muxer_node.cpp create_subscription 37 m_lon_control_cmd_sub = create_subscription<autoware_auto_control_msgs::msg::LongitudinalCommand>( \n", - "/universe/autoware.universe/control/trajectory_follower_nodes/src/latlon_muxer_node.cpp bind 39 std::bind(&LatLonMuxer::lonCtrlCmdCallback, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp create_subscription 129 sub_gate_mode_ = raw_node_->create_subscription<tier4_control_msgs::msg::GateMode>( \n", - "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp bind 130 \"/control/current_gate_mode\", 10, std::bind(&AutowareStatePanel::onGateMode, this, _1)); \n", - "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp create_subscription 133 raw_node_->create_subscription<tier4_control_msgs::msg::ExternalCommandSelectorMode>( \n", - "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp bind 135 std::bind(&AutowareStatePanel::onSelectorMode, this, _1)); \n", - "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp create_subscription 138 raw_node_->create_subscription<autoware_auto_system_msgs::msg::AutowareState>( \n", - "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp bind 139 \"/autoware/state\", 10, std::bind(&AutowareStatePanel::onAutowareState, this, _1)); \n", - "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp create_subscription 141 sub_gear_ = raw_node_->create_subscription<autoware_auto_vehicle_msgs::msg::GearReport>( \n", - "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp bind 142 \"/vehicle/status/gear_status\", 10, std::bind(&AutowareStatePanel::onShift, this, _1)); \n", - "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp create_subscription 144 sub_engage_ = raw_node_->create_subscription<tier4_external_api_msgs::msg::EngageStatus>( \n", - "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp bind 145 \"/api/external/get/engage\", 10, std::bind(&AutowareStatePanel::onEngageStatus, this, _1)); \n", - "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp create_subscription 147 sub_emergency_ = raw_node_->create_subscription<tier4_external_api_msgs::msg::Emergency>( \n", - "/universe/autoware.universe/common/tier4_state_rviz_plugin/src/autoware_state_panel.cpp bind 148 \"/api/autoware/get/emergency\", 10, std::bind(&AutowareStatePanel::onEmergencyStatus, this, _1)); \n", - "/universe/autoware.universe/perception/heatmap_visualizer/src/heatmap_visualizer_node.cpp create_subscription 39 objects_sub_ = create_subscription<autoware_auto_perception_msgs::msg::DetectedObjects>( \n", - "/universe/autoware.universe/perception/heatmap_visualizer/src/heatmap_visualizer_node.cpp bind 41 std::bind(&HeatmapVisualizerNode::detectedObjectsCallback, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/common/path_distance_calculator/src/path_distance_calculator.cpp create_subscription 27 sub_path_ = create_subscription<autoware_auto_planning_msgs::msg::Path>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/common/path_distance_calculator/src/path_distance_calculator.cpp#create_subscription@27\n", - "/universe/autoware.universe/perception/image_projection_based_fusion/src/debugger.cpp create_subscription 43 auto sub = image_transport::create_subscription( \n", - "/universe/autoware.universe/perception/image_projection_based_fusion/src/debugger.cpp bind 45 std::bind(&Debugger::imageCallback, this, std::placeholders::_1, img_i), \"raw\", \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/operator.cpp create_subscription 41 sub_get_operator_ = create_subscription<tier4_external_api_msgs::msg::Operator>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/operator.cpp bind 42 \"/api/autoware/get/operator\", rclcpp::QoS(1), std::bind(&Operator::onOperator, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/operator.cpp create_subscription 43 sub_get_observer_ = create_subscription<tier4_external_api_msgs::msg::Observer>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/operator.cpp bind 44 \"/api/autoware/get/observer\", rclcpp::QoS(1), std::bind(&Operator::onObserver, this, _1)); \n", - "/universe/autoware.universe/perception/lidar_apollo_instance_segmentation/src/node.cpp create_subscription 37 pointcloud_sub_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", - "/universe/autoware.universe/perception/lidar_apollo_instance_segmentation/src/node.cpp bind 39 std::bind(&LidarInstanceSegmentationNode::pointCloudCallback, this, _1)); \n", - "/universe/autoware.universe/common/tier4_autoware_utils/src/vehicle/vehicle_state_checker.cpp create_subscription 27 sub_odom_ = node->create_subscription<Odometry>( \n", - "/universe/autoware.universe/common/tier4_autoware_utils/src/vehicle/vehicle_state_checker.cpp bind 29 std::bind(&VehicleStopChecker::onOdom, this, _1)); \n", - "/universe/autoware.universe/common/tier4_autoware_utils/src/vehicle/vehicle_state_checker.cpp create_subscription 90 sub_trajectory_ = node->create_subscription<Trajectory>( \n", - "/universe/autoware.universe/common/tier4_autoware_utils/src/vehicle/vehicle_state_checker.cpp bind 92 std::bind(&VehicleArrivalChecker::onTrajectory, this, _1)); \n", - "/universe/external/grid_map/grid_map_visualization/src/GridMapVisualization.cpp create_subscription 148 mapSubscriber_ = nodePtr->create_subscription<grid_map_msgs::msg::GridMap>( \n", - "/universe/external/grid_map/grid_map_visualization/src/GridMapVisualization.cpp bind 150 std::bind(&GridMapVisualization::callback, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/localization/vehicle_velocity_converter/src/vehicle_velocity_converter.cpp create_subscription 25 vehicle_report_sub_ = create_subscription<autoware_auto_vehicle_msgs::msg::VelocityReport>( \n", - "/universe/autoware.universe/localization/vehicle_velocity_converter/src/vehicle_velocity_converter.cpp bind 27 std::bind(&VehicleVelocityConverter::callbackVelocityReport, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/system/dummy_infrastructure/src/dummy_infrastructure_node/dummy_infrastructure_node.cpp create_subscription 82 sub_command_array_ = create_subscription<InfrastructureCommandArray>( \n", - "/universe/autoware.universe/system/dummy_infrastructure/src/dummy_infrastructure_node/dummy_infrastructure_node.cpp bind 84 std::bind(&DummyInfrastructureNode::onCommandArray, this, _1)); \n", - "/universe/autoware.universe/sensing/gnss_poser/src/gnss_poser_core.cpp create_subscription 45 nav_sat_fix_sub_ = create_subscription<sensor_msgs::msg::NavSatFix>( \n", - "/universe/autoware.universe/sensing/gnss_poser/src/gnss_poser_core.cpp bind 46 \"fix\", rclcpp::QoS{1}, std::bind(&GNSSPoser::callbackNavSatFix, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/sensing/gnss_poser/src/gnss_poser_core.cpp create_subscription 47 nav_pvt_sub_ = create_subscription<ublox_msgs::msg::NavPVT>( \n", - "/universe/autoware.universe/sensing/gnss_poser/src/gnss_poser_core.cpp bind 48 \"navpvt\", rclcpp::QoS{1}, std::bind(&GNSSPoser::callbackNavPVT, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/common/tier4_calibration_rviz_plugin/src/accel_brake_map_calibrator_button_panel.cpp create_subscription 71 update_suggest_sub_ = raw_node->create_subscription<std_msgs::msg::Bool>( \n", - "/universe/autoware.universe/common/tier4_calibration_rviz_plugin/src/accel_brake_map_calibrator_button_panel.cpp bind 73 std::bind( \n", - "/universe/autoware.universe/common/tier4_calibration_rviz_plugin/src/accel_brake_map_calibrator_button_panel.cpp create_subscription 103 update_suggest_sub_ = raw_node->create_subscription<std_msgs::msg::Bool>( \n", - "/universe/autoware.universe/common/tier4_calibration_rviz_plugin/src/accel_brake_map_calibrator_button_panel.cpp bind 105 std::bind( \n", - "/universe/autoware.universe/perception/compare_map_segmentation/src/distance_based_compare_map_filter_nodelet.cpp create_subscription 33 sub_map_ = this->create_subscription<PointCloud2>( \n", - "/universe/autoware.universe/perception/compare_map_segmentation/src/distance_based_compare_map_filter_nodelet.cpp bind 35 std::bind(&DistanceBasedCompareMapFilterComponent::input_target_callback, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/fail_safe_state.cpp create_subscription 26 sub_state_ = create_subscription<autoware_auto_system_msgs::msg::EmergencyState>( \n", - "[WARN] Could not find matching bind statement for /universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/fail_safe_state.cpp#create_subscription@26\n", - "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_diag_publisher.cpp create_subscription 38 can_sub_ = create_subscription<can_msgs::msg::Frame>( \n", - "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_interface/pacmod_diag_publisher.cpp bind 39 \"/pacmod/can_tx\", 1, std::bind(&PacmodDiagPublisher::callbackCan, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/perception/shape_estimation/src/node.cpp create_subscription 39 sub_ = create_subscription<DetectedObjectsWithFeature>( \n", - "/universe/autoware.universe/perception/shape_estimation/src/node.cpp bind 40 \"input\", rclcpp::QoS{1}, std::bind(&ShapeEstimationNode::callback, this, _1)); \n", - "/universe/autoware.universe/localization/pose_initializer/src/pose_initializer_core.cpp create_subscription 71 initial_pose_sub_ = this->create_subscription<geometry_msgs::msg::PoseWithCovarianceStamped>( \n", - "/universe/autoware.universe/localization/pose_initializer/src/pose_initializer_core.cpp bind 73 std::bind(&PoseInitializer::callbackInitialPose, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/localization/pose_initializer/src/pose_initializer_core.cpp create_subscription 74 map_points_sub_ = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", - "/universe/autoware.universe/localization/pose_initializer/src/pose_initializer_core.cpp bind 76 std::bind(&PoseInitializer::callbackMapPoints, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/localization/pose_initializer/src/pose_initializer_core.cpp create_subscription 77 gnss_pose_sub_ = this->create_subscription<geometry_msgs::msg::PoseWithCovarianceStamped>( \n", - "/universe/autoware.universe/localization/pose_initializer/src/pose_initializer_core.cpp bind 79 std::bind(&PoseInitializer::callbackGNSSPoseCov, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/localization/pose_initializer/src/pose_initializer_core.cpp create_subscription 81 this->create_subscription<tier4_localization_msgs::msg::PoseInitializationRequest>( \n", - "/universe/autoware.universe/localization/pose_initializer/src/pose_initializer_core.cpp bind 83 std::bind(&PoseInitializer::callbackPoseInitializationRequest, this, std::placeholders::_1)); \n", - "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp create_subscription 60 sub_steer_ = this->create_subscription<autoware_auto_vehicle_msgs::msg::SteeringReport>( \n", - "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp bind 61 \"input/steer\", 1, std::bind(&AutowareIvAdapter::callbackSteer, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp create_subscription 63 this->create_subscription<autoware_auto_control_msgs::msg::AckermannControlCommand>( \n", - "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp bind 65 std::bind(&AutowareIvAdapter::callbackVehicleCmd, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp create_subscription 67 this->create_subscription<autoware_auto_vehicle_msgs::msg::TurnIndicatorsReport>( \n", - "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp bind 68 \"input/turn_indicators\", 1, std::bind(&AutowareIvAdapter::callbackTurnIndicators, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp create_subscription 70 this->create_subscription<autoware_auto_vehicle_msgs::msg::HazardLightsReport>( \n", - "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp bind 71 \"input/hazard_lights\", 1, std::bind(&AutowareIvAdapter::callbackHazardLights, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp create_subscription 72 sub_odometry_ = this->create_subscription<nav_msgs::msg::Odometry>( \n", - "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp bind 73 \"input/odometry\", 1, std::bind(&AutowareIvAdapter::callbackTwist, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp create_subscription 74 sub_gear_ = this->create_subscription<autoware_auto_vehicle_msgs::msg::GearReport>( \n", - "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp bind 75 \"input/gear\", 1, std::bind(&AutowareIvAdapter::callbackGear, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp create_subscription 76 sub_battery_ = this->create_subscription<tier4_vehicle_msgs::msg::BatteryStatus>( \n", - "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp bind 77 \"input/battery\", 1, std::bind(&AutowareIvAdapter::callbackBattery, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp create_subscription 78 sub_nav_sat_ = this->create_subscription<sensor_msgs::msg::NavSatFix>( \n", - "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp bind 79 \"input/nav_sat\", 1, std::bind(&AutowareIvAdapter::callbackNavSat, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp create_subscription 80 sub_autoware_state_ = this->create_subscription<tier4_system_msgs::msg::AutowareState>( \n", - "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp bind 81 \"input/autoware_state\", 1, std::bind(&AutowareIvAdapter::callbackAutowareState, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp create_subscription 82 sub_control_mode_ = this->create_subscription<autoware_auto_vehicle_msg \n", - "/universe/external/tier4_ad_api_adaptor/awapi_awiv_adapter/src/awapi_awiv_adapter_core.cpp bind 83 \"input/control_mode\", 1, std::bind(&AutowareIvAdapter::callbackControlMode, this, _1)); \n", - "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_additional_debug_publisher/pacmod_additional_debug_publisher_node.cpp create_subscription 32 sub_ = create_subscription<can_msgs::msg::Frame>( \n", - "/vehicle/external/pacmod_interface/pacmod_interface/src/pacmod_additional_debug_publisher/pacmod_additional_debug_publisher_node.cpp bind 34 std::bind(&PacmodAdditionalDebugPublisherNode::canTxCallback, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp create_subscription 28 blind_spot_sub_ = create_subscription<CooperateStatusArray>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp bind 30 rclcpp::QoS(1), std::bind(&RTCController::blindSpotCallback, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp create_subscription 31 crosswalk_sub_ = create_subscription<CooperateStatusArray>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp bind 33 rclcpp::QoS(1), std::bind(&RTCController::crosswalkCallback, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp create_subscription 34 detection_area_sub_ = create_subscription<CooperateStatusArray>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp bind 36 rclcpp::QoS(1), std::bind(&RTCController::detectionAreaCallback, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp create_subscription 37 intersection_sub_ = create_subscription<CooperateStatusArray>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp bind 39 rclcpp::QoS(1), std::bind(&RTCController::intersectionCallback, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp create_subscription 40 no_stopping_area_sub_ = create_subscription<CooperateStatusArray>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp bind 42 rclcpp::QoS(1), std::bind(&RTCController::noStoppingAreaCallback, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp create_subscription 43 occlusion_spot_sub_ = create_subscription<CooperateStatusArray>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp bind 45 rclcpp::QoS(1), std::bind(&RTCController::occlusionSpotCallback, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp create_subscription 46 traffic_light_sub_ = create_subscription<CooperateStatusArray>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp bind 48 rclcpp::QoS(1), std::bind(&RTCController::trafficLightCallback, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp create_subscription 49 virtual_traffic_light_sub_ = create_subscription<CooperateStatusArray>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp bind 52 rclcpp::QoS(1), std::bind(&RTCController::virtualTrafficLightCallback, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp create_subscription 53 lane_change_left_sub_ = create_subscription<CooperateStatusArray>( \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp bind 55 rclcpp::QoS(1), std::bind(&RTCController::laneChangeLeftCallback, this, _1)); \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp create_subscription 56 lane_change_right_sub_ = create_subscription<CooperateStatusArra \n", - "/universe/external/tier4_ad_api_adaptor/autoware_iv_external_api_adaptor/src/rtc_controller.cpp bind 58 rclcpp::QoS(1), std::bind(&RTCController::laneChangeRightCallback, this, _1)); \n", - "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py create_subscription 73 self.sub0 = self.create_subscription( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py#create_subscription@73\n", - "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py create_subscription 79 self.sub1 = self.create_subscription( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py#create_subscription@79\n", - "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py create_subscription 82 self.sub2 = self.create_subscription( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py#create_subscription@82\n", - "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py create_subscription 88 self.sub3 = self.create_subscription( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py#create_subscription@88\n", - "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py create_subscription 91 self.sub4 = self.create_subscription( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py#create_subscription@91\n", - "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py create_subscription 99 self.sub5 = self.create_subscription( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py#create_subscription@99\n", - "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py create_subscription 104 self.sub6 = self.create_subscription( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py#create_subscription@104\n", - "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py create_subscription 110 self.sub7 = self.create_subscription( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py#create_subscription@110\n", - "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py create_subscription 115 self.sub8 = self.create_subscription( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py#create_subscription@115\n", - "/universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py create_subscription 118 self.sub12 = self.create_subscription( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/planning/motion_velocity_smoother/scripts/closest_velocity_checker.py#create_subscription@118\n", - "/universe/autoware.universe/localization/gyro_odometer/src/gyro_odometer_core.cpp create_subscription 33 vehicle_twist_with_cov_sub_ = create_subscription<geometry_msgs::msg::TwistWithCovarianceStamped>( \n", - "/universe/autoware.universe/localization/gyro_odometer/src/gyro_odometer_core.cpp bind 35 std::bind(&GyroOdometer::callbackTwistWithCovariance, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/localization/gyro_odometer/src/gyro_odometer_core.cpp create_subscription 37 imu_sub_ = create_subscription<sensor_msgs::msg::Imu>( \n", - "/universe/autoware.universe/localization/gyro_odometer/src/gyro_odometer_core.cpp bind 38 \"imu\", rclcpp::QoS{100}, std::bind(&GyroOdometer::callbackImu, this, std::placeholders::_1)); \n", - "/universe/autoware.universe/perception/tensorrt_yolo/src/nodelet.cpp create_subscription 124 image_sub_ = image_transport::create_subscription( \n", - "/universe/autoware.universe/perception/tensorrt_yolo/src/nodelet.cpp bind 125 this, \"in/image\", std::bind(&TensorrtYoloNodelet::callback, this, _1), \"raw\", \n", - "/universe/autoware.universe/localization/ekf_localizer/test/src/test_ekf_localizer.cpp create_subscription 45 sub_twist = this->create_subscription<geometry_msgs::msg::TwistStamped>( \n", - "/universe/autoware.universe/localization/ekf_localizer/test/src/test_ekf_localizer.cpp bind 46 \"/ekf_twist\", 1, std::bind(&TestEKFLocalizerNode::testCallbackTwist, this, _1)); \n", - "/universe/autoware.universe/localization/ekf_localizer/test/src/test_ekf_localizer.cpp create_subscription 47 sub_pose = this->create_subscription<geometry_msgs::msg::PoseStamped>( \n", - "/universe/autoware.universe/localization/ekf_localizer/test/src/test_ekf_localizer.cpp bind 48 \"/ekf_pose\", 1, std::bind(&TestEKFLocalizerNode::testCallbackPose, this, _1)); \n", - "/universe/autoware.universe/common/tier4_planning_rviz_plugin/src/drivable_area/display.cpp create_subscription 234 ->template create_subscription<map_msgs::msg::OccupancyGridUpdate>( \n", - "[WARN] Could not find matching bind statement for /universe/autoware.universe/common/tier4_planning_rviz_plugin/src/drivable_area/display.cpp#create_subscription@234\n", - "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/concatenate_data/concatenate_data_nodelet.cpp create_subscription 158 filters_[d] = this->create_subscription<sensor_msgs::msg::PointCloud2>( \n", - "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/concatenate_data/concatenate_data_nodelet.cpp bind 161 auto twist_cb = std::bind( \n", - "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/concatenate_data/concatenate_data_nodelet.cpp create_subscription 163 sub_twist_ = this->create_subscription<autoware_auto_vehicle_msgs::msg::VelocityReport>( \n", - "/universe/autoware.universe/sensing/pointcloud_preprocessor/src/concatenate_data/concatenate_data_nodelet.cpp bind 173 std::bind(&PointCloudConcatenateDataSynchronizerComponent::timer_callback, this)); \n" - ] - } - ], - "source": [ - "def sym(path, symbol):\n", - " r = requests.get(jj(API_URL, f\"search?path={quote(path)}&symbol={quote(symbol)}\"))\n", - " r.raise_for_status()\n", - " results = r.json()['results']\n", - " records = []\n", - " for path, matches in results.items():\n", - " for match in matches:\n", - " records.append((path, symbol, int(match['lineNumber']) - 1, match['line']))\n", - " \n", - " df = pd.DataFrame(records, columns=[\"path\", \"symbol\", \"line_num\", \"line\"])\n", - " return df\n", - "\n", - "\n", - "def list_subscriptions(path):\n", - " #\"results\": {\n", - " #\"/universe/autoware.universe/planning/behavior_path_planner/include/behavior_path_planner/behavior_path_planner_node.hpp\": [\n", - " # {\n", - " # \"line\": \" rclcpp::Subscription<Odometry>::SharedPtr velocity_subscriber_;\",\n", - " # \"lineNumber\": \"90\"\n", - " # }\n", - " #],\n", - " syms_sub = sym(path, \"create_subscription\")\n", - " for path, symb, line_num, line in syms_sub.itertuples(index=False, name=None):\n", - " syms_bind = sym(path, \"bind\")\n", - " print(f\"{path:120s} {symb:25s} {line_num:4d} {line:120s}\")\n", - " closest_bind = syms_bind[syms_bind[\"line_num\"]>=line_num][:1]\n", - " if len(closest_bind) == 0:\n", - " print(f\"[WARN] Could not find matching bind statement for {path}#{symb}@{line_num}\")\n", - " for cpath, csymb, cline_num, cline in closest_bind.itertuples(index=False, name=None):\n", - " print(f\"{cpath:120s} {csymb:25s} {cline_num:4d} {cline:120s}\")\n", - "\n", - "\n", - "\n", - "list_subscriptions(\"\")" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "interpreter": { - "hash": "e7370f93d1d0cde622a1f8e1c04877d8463912d04d973331ad4851f04de6915a" - }, - "kernelspec": { - "display_name": "Python 3.8.10 64-bit", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.8.10" - }, - "orig_nbformat": 4 - }, - "nbformat": 4, - "nbformat_minor": 2 -}