1 // Copyright 2020 The Pigweed Authors 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); you may not 4 // use this file except in compliance with the License. You may obtain a copy of 5 // the License at 6 // 7 // https://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 11 // WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 12 // License for the specific language governing permissions and limitations under 13 // the License. 14 //============================================================================== 15 // 16 17 #include <chrono> 18 19 #include "pw_trace_tokenized/trace_tokenized.h" 20 21 using namespace std::chrono; 22 23 namespace { 24 25 auto start = steady_clock::now(); 26 27 } // namespace 28 29 // Define trace time as a counter for tests. pw_trace_GetTraceTime()30PW_TRACE_TIME_TYPE pw_trace_GetTraceTime() { 31 auto delta = steady_clock::now() - start; 32 return floor<microseconds>(delta).count(); 33 } 34 35 // Microsecond time source pw_trace_GetTraceTimeTicksPerSecond()36size_t pw_trace_GetTraceTimeTicksPerSecond() { return 1000000; } 37