mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-19 00:41:43 +00:00
Use ghc::filesystem as fill on older GCC (e.g. RoboRIO). This can be removed once all GCC platforms have upgraded to 8.1 or later. File open functionality has been retained from LLVM but moved to "fs" namespace and tweaked for improved consistency with std::filesystem (e.g. error_code is passed by reference instead of returned). Also update WPILibC's Filesystem functions to return std::string.
30 lines
772 B
C++
30 lines
772 B
C++
// Copyright (c) FIRST and other WPILib contributors.
|
|
// Open Source Software; you can modify and/or share it under the terms of
|
|
// the WPILib BSD license file in the root directory of this project.
|
|
|
|
#include "frc/Filesystem.h"
|
|
|
|
#include <wpi/fs.h>
|
|
|
|
#include "frc/RobotBase.h"
|
|
|
|
std::string frc::filesystem::GetLaunchDirectory() {
|
|
return fs::current_path().string();
|
|
}
|
|
|
|
std::string frc::filesystem::GetOperatingDirectory() {
|
|
if constexpr (RobotBase::IsReal()) {
|
|
return "/home/lvuser";
|
|
} else {
|
|
return frc::filesystem::GetLaunchDirectory();
|
|
}
|
|
}
|
|
|
|
std::string frc::filesystem::GetDeployDirectory() {
|
|
if constexpr (RobotBase::IsReal()) {
|
|
return "/home/lvuser/deploy";
|
|
} else {
|
|
return (fs::current_path() / "src" / "main" / "deploy").string();
|
|
}
|
|
}
|