Lines Matching defs:Timer
62 struct Timer { struct
63 explicit Timer(std::string &&name, TimerKind kind) in Timer() argument
67 void start() { startTime = std::chrono::system_clock::now(); } in start()
70 void stop() { in stop()
77 Timer *getChildTimer(const void *id, TimerKind kind, in getChildTimer()
86 TimeRecord getTotalTime() { in getTotalTime()
104 using ChildrenMap = llvm::MapVector<const void *, std::unique_ptr<Timer>>;
107 void merge(Timer &&other) { in merge()
116 void mergeChildren(ChildrenMap &&otherChildren) { in mergeChildren()
139 void mergeChild(ChildrenMap::value_type &&childIt) { in mergeChild()
148 std::chrono::time_point<std::chrono::system_clock> startTime;
149 std::chrono::nanoseconds wallTime = std::chrono::nanoseconds(0);
150 std::chrono::nanoseconds userTime = std::chrono::nanoseconds(0);
153 ChildrenMap children;
156 std::string name;
159 TimerKind kind;