mirror of
https://github.com/sunnypilot/sunnypilot.git
synced 2026-09-03 19:03:42 +08:00
7461f70fdb
# Conflicts: # README.md # SConstruct # conftest.py # docs/CARS.md # msgq_repo # opendbc_repo # openpilot/common/params_keys.h # openpilot/common/params_pyx.pyx # openpilot/common/tests/test_swaglog.cc # openpilot/selfdrive/car/card.py # openpilot/selfdrive/car/tests/test_car_interfaces.py # openpilot/selfdrive/car/tests/test_cruise_speed.py # openpilot/selfdrive/car/tests/test_models.py # openpilot/selfdrive/controls/controlsd.py # openpilot/selfdrive/controls/lib/latcontrol_torque.py # openpilot/selfdrive/controls/lib/longitudinal_planner.py # openpilot/selfdrive/controls/plannerd.py # openpilot/selfdrive/controls/radard.py # openpilot/selfdrive/controls/tests/test_longcontrol.py # openpilot/selfdrive/locationd/torqued.py # openpilot/selfdrive/modeld/modeld.py # openpilot/selfdrive/monitoring/dmonitoringd.py # openpilot/selfdrive/monitoring/test_monitoring.py # openpilot/selfdrive/selfdrived/selfdrived.py # openpilot/selfdrive/selfdrived/tests/test_alertmanager.py # openpilot/selfdrive/test/longitudinal_maneuvers/plant.py # openpilot/selfdrive/test/process_replay/migration.py # openpilot/selfdrive/test/process_replay/process_replay.py # openpilot/selfdrive/ui/feedback/feedbackd.py # openpilot/selfdrive/ui/layouts/settings/device.py # openpilot/selfdrive/ui/layouts/settings/toggles.py # openpilot/selfdrive/ui/mici/layouts/onboarding.py # openpilot/selfdrive/ui/onroad/augmented_road_view.py # openpilot/selfdrive/ui/tests/test_soundd.py # openpilot/selfdrive/ui/translations/app.pot # openpilot/selfdrive/ui/translations/app_de.po # openpilot/selfdrive/ui/translations/app_en.po # openpilot/selfdrive/ui/translations/app_es.po # openpilot/selfdrive/ui/translations/app_fr.po # openpilot/selfdrive/ui/translations/app_ja.po # openpilot/selfdrive/ui/translations/app_ko.po # openpilot/selfdrive/ui/translations/app_pt-BR.po # openpilot/selfdrive/ui/translations/app_th.po # openpilot/selfdrive/ui/translations/app_tr.po # openpilot/selfdrive/ui/translations/app_uk.po # openpilot/selfdrive/ui/translations/app_zh-CHS.po # openpilot/selfdrive/ui/translations/app_zh-CHT.po # openpilot/system/athena/athenad.py # openpilot/system/hardware/hardwared.py # openpilot/system/loggerd/deleter.py # openpilot/system/manager/process_config.py # openpilot/system/ui/lib/application.py # panda # pyproject.toml # tinygrad_repo # uv.lock
63 lines
1.5 KiB
C++
63 lines
1.5 KiB
C++
#pragma once
|
|
|
|
#include <string>
|
|
|
|
#include "common/hardware/base.h"
|
|
#include "common/util.h"
|
|
|
|
#if __COMMA_HARDWARE__
|
|
#include "common/hardware/comma/hardware.h"
|
|
#define Hardware HardwareComma
|
|
#else
|
|
#include "common/hardware/pc/hardware.h"
|
|
#define Hardware HardwarePC
|
|
#endif
|
|
|
|
namespace Path {
|
|
inline std::string openpilot_prefix() {
|
|
return util::getenv("OPENPILOT_PREFIX", "");
|
|
}
|
|
|
|
inline std::string comma_home() {
|
|
return util::getenv("HOME") + "/.comma" + Path::openpilot_prefix();
|
|
}
|
|
|
|
inline std::string log_root() {
|
|
if (const char *env = getenv("LOG_ROOT")) {
|
|
return env;
|
|
}
|
|
return Hardware::PC() ? Path::comma_home() + "/media/0/realdata" : "/data/media/0/realdata";
|
|
}
|
|
|
|
inline std::string params() {
|
|
return util::getenv("PARAMS_ROOT", Hardware::PC() ? (Path::comma_home() + "/params") : "/data/params");
|
|
}
|
|
|
|
inline std::string rsa_file() {
|
|
return Hardware::PC() ? Path::comma_home() + "/persist/comma/id_rsa" : "/persist/comma/id_rsa";
|
|
}
|
|
|
|
inline std::string swaglog_ipc() {
|
|
return "ipc:///tmp/logmessage" + Path::openpilot_prefix();
|
|
}
|
|
|
|
inline std::string download_cache_root() {
|
|
if (const char *env = getenv("COMMA_CACHE")) {
|
|
return env;
|
|
}
|
|
return "/tmp/comma_download_cache" + Path::openpilot_prefix() + "/";
|
|
}
|
|
|
|
inline std::string shm_path() {
|
|
#ifdef __APPLE__
|
|
return"/tmp";
|
|
#else
|
|
return "/dev/shm";
|
|
#endif
|
|
}
|
|
|
|
inline std::string model_root() {
|
|
return Hardware::PC() ? Path::comma_home() + "/media/0/models" : "/data/media/0/models";
|
|
}
|
|
} // namespace Path
|