1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115
|
// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "components/viz/test/begin_frame_args_test.h"
#include <stdint.h>
#include <ostream>
#include "base/time/tick_clock.h"
#include "base/time/time.h"
#include "components/viz/common/frame_sinks/begin_frame_args.h"
namespace viz {
BeginFrameArgs CreateBeginFrameArgsForTesting(
BeginFrameArgs::CreationLocation location,
uint64_t source_id,
uint64_t sequence_number) {
return CreateBeginFrameArgsForTesting(location, source_id, sequence_number,
base::TimeTicks::Now());
}
BeginFrameArgs CreateBeginFrameArgsForTesting(
BeginFrameArgs::CreationLocation location,
uint64_t source_id,
uint64_t sequence_number,
base::TimeTicks frame_time) {
return BeginFrameArgs::Create(
location, source_id, sequence_number, frame_time,
frame_time + BeginFrameArgs::DefaultInterval() -
BeginFrameArgs::DefaultEstimatedDisplayDrawTime(
BeginFrameArgs::DefaultInterval()),
BeginFrameArgs::DefaultInterval(), BeginFrameArgs::NORMAL);
}
BeginFrameArgs CreateBeginFrameArgsForTesting(
BeginFrameArgs::CreationLocation location,
uint64_t source_id,
uint64_t sequence_number,
int64_t frame_time,
int64_t deadline,
int64_t interval) {
return BeginFrameArgs::Create(
location, source_id, sequence_number,
base::TimeTicks() + base::Microseconds(frame_time),
base::TimeTicks() + base::Microseconds(deadline),
base::Microseconds(interval), BeginFrameArgs::NORMAL);
}
BeginFrameArgs CreateBeginFrameArgsForTesting(
BeginFrameArgs::CreationLocation location,
uint64_t source_id,
uint64_t sequence_number,
int64_t frame_time,
int64_t deadline,
int64_t interval,
BeginFrameArgs::BeginFrameArgsType type) {
return BeginFrameArgs::Create(
location, source_id, sequence_number,
base::TimeTicks() + base::Microseconds(frame_time),
base::TimeTicks() + base::Microseconds(deadline),
base::Microseconds(interval), type);
}
BeginFrameArgs CreateBeginFrameArgsForTesting(
BeginFrameArgs::CreationLocation location,
uint64_t source_id,
uint64_t sequence_number,
const base::TickClock* now_src) {
base::TimeTicks now = now_src->NowTicks();
return BeginFrameArgs::Create(
location, source_id, sequence_number, now,
now + BeginFrameArgs::DefaultInterval() -
BeginFrameArgs::DefaultEstimatedDisplayDrawTime(
BeginFrameArgs::DefaultInterval()),
BeginFrameArgs::DefaultInterval(), BeginFrameArgs::NORMAL);
}
bool operator==(const BeginFrameArgs& lhs, const BeginFrameArgs& rhs) {
return (lhs.type == rhs.type) && (lhs.frame_id == rhs.frame_id) &&
(lhs.frame_time == rhs.frame_time) && (lhs.deadline == rhs.deadline) &&
(lhs.interval == rhs.interval) &&
(lhs.frames_throttled_since_last == rhs.frames_throttled_since_last);
}
::std::ostream& operator<<(::std::ostream& os, const BeginFrameArgs& args) {
PrintTo(args, &os);
return os;
}
void PrintTo(const BeginFrameArgs& args, ::std::ostream* os) {
*os << "BeginFrameArgs(" << BeginFrameArgs::TypeToString(args.type) << ", "
<< args.frame_id.source_id << ", " << args.frame_id.sequence_number
<< ", " << args.frame_time.since_origin().InMicroseconds() << ", "
<< args.deadline.since_origin().InMicroseconds() << ", "
<< args.interval.InMicroseconds() << "us, "
<< args.frames_throttled_since_last << ")";
}
bool operator==(const BeginFrameAck& lhs, const BeginFrameAck& rhs) {
return (lhs.frame_id == rhs.frame_id) && (lhs.has_damage == rhs.has_damage);
}
::std::ostream& operator<<(::std::ostream& os, const BeginFrameAck& args) {
PrintTo(args, &os);
return os;
}
void PrintTo(const BeginFrameAck& ack, ::std::ostream* os) {
*os << "BeginFrameAck(" << ack.frame_id.source_id << ", "
<< ack.frame_id.sequence_number << ", " << ack.has_damage << ")";
}
} // namespace viz
|