[wpilibc] Add FRC_ReportWarning (#6681)

This commit is contained in:
Jade
2024-07-28 11:20:08 +08:00
committed by GitHub
parent aba82e6a6c
commit 5dcaa6d671
7 changed files with 24 additions and 15 deletions

View File

@@ -18,7 +18,6 @@
#include <wpi/StringExtras.h>
#include <wpi/fs.h>
#include <wpi/print.h>
#include <wpi/timestamp.h>
#ifdef __FRC_ROBORIO__
#include <FRC_NetworkCommunication/FRCComm.h>

View File

@@ -73,9 +73,9 @@ static std::string MakeLogDir(std::string_view dir) {
return "/u/logs";
}
if (RobotBase::GetRuntimeType() == kRoboRIO) {
FRC_ReportError(warn::Warning,
"DataLogManager: Logging to RoboRIO 1 internal storage is "
"not recommended! Plug in a FAT32 formatted flash drive!");
FRC_ReportWarning(
"DataLogManager: Logging to RoboRIO 1 internal storage is "
"not recommended! Plug in a FAT32 formatted flash drive!");
}
fs::create_directory("/home/lvuser/logs", ec);
return "/home/lvuser/logs";
@@ -151,8 +151,8 @@ void Thread::Main() {
}
auto size = entry.file_size();
if (fs::remove(entry.path(), ec)) {
FRC_ReportError(warn::Warning, "DataLogManager: Deleted {}",
entry.path().string());
FRC_ReportWarning("DataLogManager: Deleted {}",
entry.path().string());
freeSpace += size;
if (freeSpace >= kFreeSpaceThreshold) {
break;

View File

@@ -19,10 +19,10 @@ I2C::I2C(Port port, int deviceAddress)
int32_t status = 0;
if (port == I2C::Port::kOnboard) {
FRC_ReportError(warn::Warning,
"Onboard I2C port is subject to system lockups. See Known "
"Issues page for "
"details");
FRC_ReportWarning(
"Onboard I2C port is subject to system lockups. See Known "
"Issues page for "
"details");
}
HAL_InitializeI2C(m_port, &status);

View File

@@ -36,7 +36,7 @@ void Tracer::PrintEpochs() {
wpi::raw_svector_ostream os(buf);
PrintEpochs(os);
if (!buf.empty()) {
FRC_ReportError(warn::Warning, "{}", buf.c_str());
FRC_ReportWarning("{}", buf.c_str());
}
}

View File

@@ -113,8 +113,8 @@ void Watchdog::Impl::Main() {
if (now - watchdog->m_lastTimeoutPrintTime > kMinPrintPeriod) {
watchdog->m_lastTimeoutPrintTime = now;
if (!watchdog->m_suppressTimeoutMessage) {
FRC_ReportError(warn::Warning, "Watchdog not fed within {:.6f}s",
watchdog->m_timeout.value());
FRC_ReportWarning("Watchdog not fed within {:.6f}s",
watchdog->m_timeout.value());
}
}

View File

@@ -47,8 +47,7 @@ int frc::RunHALInitialization() {
HALUsageReporting::kLanguage_CPlusPlus, 0, GetWPILibVersion());
if (!frc::Notifier::SetHALThreadPriority(true, 40)) {
FRC_ReportError(warn::Warning,
"Setting HAL Notifier RT priority to 40 failed\n");
FRC_ReportWarning("Setting HAL Notifier RT priority to 40 failed\n");
}
std::puts("\n********** Robot program starting **********");

View File

@@ -142,6 +142,17 @@ namespace warn {
} \
} while (0)
/**
* Reports a warning to the driver station (using HAL_SendError).
*
* @param[in] format error message format
*/
#define FRC_ReportWarning(format, ...) \
do { \
::frc::ReportError(warn::Warning, __FILE__, __LINE__, __FUNCTION__, \
FMT_STRING(format) __VA_OPT__(, ) __VA_ARGS__); \
} while (0)
/**
* Makes a runtime error exception object. This object should be thrown
* by the caller.