mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-07-01 02:41:48 +00:00
@@ -2,7 +2,7 @@
|
||||
// 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 <ctime>
|
||||
#include <chrono>
|
||||
#include <utility>
|
||||
#include <vector>
|
||||
|
||||
@@ -93,9 +93,10 @@ int main(int argc, const char** argv) {
|
||||
if (entry->second.name == "systemTime" && entry->second.type == "int64") {
|
||||
int64_t val;
|
||||
if (record.GetInteger(&val)) {
|
||||
std::time_t timeval = val / 1000000;
|
||||
wpi::util::print(" {:%Y-%m-%d %H:%M:%S}.{:06}\n",
|
||||
*std::localtime(&timeval), val % 1000000);
|
||||
auto timeval = std::chrono::system_clock::time_point(
|
||||
std::chrono::microseconds(val));
|
||||
wpi::util::print(" {:%Y-%m-%d %H:%M:%S}.{:06}\n", timeval,
|
||||
val % 1000000);
|
||||
} else {
|
||||
wpi::util::print(" invalid\n");
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
#include "DataLogManager.h"
|
||||
|
||||
#include <algorithm>
|
||||
#include <ctime>
|
||||
#include <chrono>
|
||||
#include <random>
|
||||
#include <string>
|
||||
#include <string_view>
|
||||
@@ -376,9 +376,8 @@ void Thread::Main() {
|
||||
}
|
||||
if (dsAttachCount > 50) { // 1 second
|
||||
if (RobotController::IsSystemTimeValid()) {
|
||||
std::time_t now = std::time(nullptr);
|
||||
auto tm = std::gmtime(&now);
|
||||
m_log.SetFilename(fmt::format("WPILIB_{:%Y%m%d_%H%M%S}.wpilog", *tm));
|
||||
auto now = std::chrono::system_clock::now();
|
||||
m_log.SetFilename(fmt::format("WPILIB_{:%Y%m%d_%H%M%S}.wpilog", now));
|
||||
dsRenamed = true;
|
||||
} else {
|
||||
dsAttachCount = 0; // wait a bit and try again
|
||||
@@ -415,11 +414,11 @@ void Thread::Main() {
|
||||
matchTypeChar = '_';
|
||||
break;
|
||||
}
|
||||
std::time_t now = std::time(nullptr);
|
||||
auto now = std::chrono::system_clock::now();
|
||||
m_log.SetFilename(
|
||||
fmt::format("WPILIB_{:%Y%m%d_%H%M%S}_{}_{}{}.wpilog",
|
||||
*std::gmtime(&now), DriverStation::GetEventName(),
|
||||
matchTypeChar, DriverStation::GetMatchNumber()));
|
||||
fmt::format("WPILIB_{:%Y%m%d_%H%M%S}_{}_{}{}.wpilog", now,
|
||||
DriverStation::GetEventName(), matchTypeChar,
|
||||
DriverStation::GetMatchNumber()));
|
||||
fmsRenamed = true;
|
||||
dsRenamed = true; // don't override FMS rename
|
||||
}
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
#include "Exporter.hpp"
|
||||
|
||||
#include <atomic>
|
||||
#include <ctime>
|
||||
#include <chrono>
|
||||
#include <functional>
|
||||
#include <future>
|
||||
#include <map>
|
||||
@@ -462,9 +462,10 @@ static void ValueToCsv(wpi::util::raw_ostream& os, const Entry& entry,
|
||||
if (entry.name == "systemTime" && entry.type == "int64") {
|
||||
int64_t val;
|
||||
if (record.GetInteger(&val)) {
|
||||
std::time_t timeval = val / 1000000;
|
||||
wpi::util::print(os, "{:%Y-%m-%d %H:%M:%S}.{:06}",
|
||||
*std::localtime(&timeval), val % 1000000);
|
||||
auto timeval =
|
||||
std::chrono::system_clock::time_point(std::chrono::microseconds(val));
|
||||
wpi::util::print(os, "{:%Y-%m-%d %H:%M:%S}.{:06}", timeval,
|
||||
val % 1000000);
|
||||
return;
|
||||
}
|
||||
} else if (entry.type == "double") {
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
#include "wpi/system/DataLogManager.hpp"
|
||||
|
||||
#include <algorithm>
|
||||
#include <ctime>
|
||||
#include <chrono>
|
||||
#include <random>
|
||||
#include <string>
|
||||
#include <vector>
|
||||
@@ -225,9 +225,8 @@ void Thread::Main() {
|
||||
}
|
||||
if (dsAttachCount > 50) { // 1 second
|
||||
if (RobotController::IsSystemTimeValid()) {
|
||||
std::time_t now = std::time(nullptr);
|
||||
auto tm = std::gmtime(&now);
|
||||
m_log.SetFilename(fmt::format("WPILIB_{:%Y%m%d_%H%M%S}.wpilog", *tm));
|
||||
auto now = std::chrono::system_clock::now();
|
||||
m_log.SetFilename(fmt::format("WPILIB_{:%Y%m%d_%H%M%S}.wpilog", now));
|
||||
dsRenamed = true;
|
||||
} else {
|
||||
dsAttachCount = 0; // wait a bit and try again
|
||||
@@ -263,11 +262,11 @@ void Thread::Main() {
|
||||
matchTypeChar = '_';
|
||||
break;
|
||||
}
|
||||
std::time_t now = std::time(nullptr);
|
||||
auto now = std::chrono::system_clock::now();
|
||||
m_log.SetFilename(
|
||||
fmt::format("WPILIB_{:%Y%m%d_%H%M%S}_{}_{}{}.wpilog",
|
||||
*std::gmtime(&now), DriverStation::GetEventName(),
|
||||
matchTypeChar, DriverStation::GetMatchNumber()));
|
||||
fmt::format("WPILIB_{:%Y%m%d_%H%M%S}_{}_{}{}.wpilog", now,
|
||||
DriverStation::GetEventName(), matchTypeChar,
|
||||
DriverStation::GetMatchNumber()));
|
||||
fmsRenamed = true;
|
||||
dsRenamed = true; // don't override FMS rename
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user