1// Copyright 2013 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CC_BASE_LATENCY_INFO_SWAP_PROMISE_H_
6#define CC_BASE_LATENCY_INFO_SWAP_PROMISE_H_
7
8#include "base/compiler_specific.h"
9#include "cc/base/swap_promise.h"
10#include "ui/events/latency_info.h"
11
12namespace cc {
13
14class CC_EXPORT LatencyInfoSwapPromise : public SwapPromise {
15 public:
16  explicit LatencyInfoSwapPromise(const ui::LatencyInfo& latency_info);
17  virtual ~LatencyInfoSwapPromise();
18
19  virtual void DidSwap(CompositorFrameMetadata* metadata) OVERRIDE;
20  virtual void DidNotSwap(DidNotSwapReason reason) OVERRIDE;
21
22  virtual int64 TraceId() const OVERRIDE;
23
24 private:
25  ui::LatencyInfo latency_;
26};
27
28}  // namespace cc
29
30#endif  // CC_BASE_LATENCY_INFO_SWAP_PROMISE_H_
31