1// Copyright (c) 2011 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 CHROME_BROWSER_PRERENDER_PRERENDER_FINAL_STATUS_H_
6#define CHROME_BROWSER_PRERENDER_PRERENDER_FINAL_STATUS_H_
7
8namespace prerender {
9
10// FinalStatus indicates whether |this| was used, or why it was cancelled.
11// NOTE: New values need to be appended, since they are used in histograms.
12enum FinalStatus {
13  FINAL_STATUS_USED,
14  FINAL_STATUS_TIMED_OUT,
15  FINAL_STATUS_EVICTED,
16  FINAL_STATUS_MANAGER_SHUTDOWN,
17  FINAL_STATUS_CLOSED,
18  FINAL_STATUS_CREATE_NEW_WINDOW,
19  FINAL_STATUS_PROFILE_DESTROYED,
20  FINAL_STATUS_APP_TERMINATING,
21  FINAL_STATUS_JAVASCRIPT_ALERT,
22  FINAL_STATUS_AUTH_NEEDED,
23  FINAL_STATUS_HTTPS,
24  FINAL_STATUS_DOWNLOAD,
25  FINAL_STATUS_MEMORY_LIMIT_EXCEEDED,
26  FINAL_STATUS_JS_OUT_OF_MEMORY,
27  FINAL_STATUS_RENDERER_UNRESPONSIVE,
28  FINAL_STATUS_TOO_MANY_PROCESSES,
29  FINAL_STATUS_RATE_LIMIT_EXCEEDED,
30  FINAL_STATUS_PENDING_SKIPPED,
31  FINAL_STATUS_CONTROL_GROUP,
32  FINAL_STATUS_HTML5_MEDIA,
33  FINAL_STATUS_MAX,
34};
35
36void RecordFinalStatus(FinalStatus final_status);
37
38}  // namespace prerender
39
40#endif  // CHROME_BROWSER_PRERENDER_PRERENDER_FINAL_STATUS_H_
41