time trace is back

This commit is contained in:
2026-09-01 10:02:54 +02:00
parent 2984354884
commit 0746295013
3 changed files with 29 additions and 8 deletions
+19 -4
View File
@@ -22,15 +22,30 @@ SOFTWARE.
*/
#include <pd/core/timetrace.hpp>
#include <pd/drivers/os.hpp>
namespace PD::TT {
static TraceMap pTraces;
PD_API TraceMap& GetTraceMap() { return pTraces; }
PD_API TT::Res& GetTraceRef(const std::string& id) {
if (!pTraces.count(id)) {
pTraces[id] = TT::Res();
pTraces[id].SetID(id);
}
return pTraces[id];
}
PD_API bool TraceExist(const std::string& id) { return pTraces.count(id); }
PD_API void Beg(const std::string& id) {
/*auto trace = os.GetTraceRef(id);
trace->SetStart(os.GetNanoTime());*/
auto& trace = GetTraceRef(id);
trace.SetStart(PD::Os::GetTimeNano());
}
PD_API void End(const std::string& id) {
/*auto trace = os.GetTraceRef(id);
trace->SetEnd(os.GetNanoTime());*/
auto& trace = GetTraceRef(id);
trace.SetEnd(PD::Os::GetTimeNano());
}
} // namespace PD::TT
+1 -1
View File
@@ -1,7 +1,7 @@
#include <pd/drivers/os.hpp>
namespace PD {
PD_API std::unique_ptr<OsDriver> Os::driver;
PD_API std::unique_ptr<OsDriver> Os::driver = std::make_unique<OsDriver>();
PD_API u64 OsDriver::GetTime() const {
return std::chrono::duration_cast<std::chrono::milliseconds>(