| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef CHROME_BROWSER_PRERENDER_PRERENDER_MANAGER_H_ | 5 #ifndef CHROME_BROWSER_PRERENDER_PRERENDER_MANAGER_H_ |
| 6 #define CHROME_BROWSER_PRERENDER_PRERENDER_MANAGER_H_ | 6 #define CHROME_BROWSER_PRERENDER_PRERENDER_MANAGER_H_ |
| 7 | 7 |
| 8 #include <list> | 8 #include <list> |
| 9 #include <map> | 9 #include <map> |
| 10 #include <string> | 10 #include <string> |
| (...skipping 22 matching lines...) Expand all Loading... |
| 33 } | 33 } |
| 34 | 34 |
| 35 namespace content { | 35 namespace content { |
| 36 class WebContents; | 36 class WebContents; |
| 37 } | 37 } |
| 38 | 38 |
| 39 namespace gfx { | 39 namespace gfx { |
| 40 class Size; | 40 class Size; |
| 41 } | 41 } |
| 42 | 42 |
| 43 namespace predictors { | |
| 44 class LoggedInPredictorTable; | |
| 45 } | |
| 46 | |
| 47 #if defined(COMPILER_GCC) | 43 #if defined(COMPILER_GCC) |
| 48 | 44 |
| 49 namespace BASE_HASH_NAMESPACE { | 45 namespace BASE_HASH_NAMESPACE { |
| 50 template <> | 46 template <> |
| 51 struct hash<content::WebContents*> { | 47 struct hash<content::WebContents*> { |
| 52 std::size_t operator()(content::WebContents* value) const { | 48 std::size_t operator()(content::WebContents* value) const { |
| 53 return reinterpret_cast<std::size_t>(value); | 49 return reinterpret_cast<std::size_t>(value); |
| 54 } | 50 } |
| 55 }; | 51 }; |
| 56 | 52 |
| (...skipping 212 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 269 void RecordNavigation(const GURL& url); | 265 void RecordNavigation(const GURL& url); |
| 270 | 266 |
| 271 Profile* profile() const { return profile_; } | 267 Profile* profile() const { return profile_; } |
| 272 | 268 |
| 273 // Classes which will be tested in prerender unit browser tests should use | 269 // Classes which will be tested in prerender unit browser tests should use |
| 274 // these methods to get times for comparison, so that the test framework can | 270 // these methods to get times for comparison, so that the test framework can |
| 275 // mock advancing/retarding time. | 271 // mock advancing/retarding time. |
| 276 virtual base::Time GetCurrentTime() const; | 272 virtual base::Time GetCurrentTime() const; |
| 277 virtual base::TimeTicks GetCurrentTimeTicks() const; | 273 virtual base::TimeTicks GetCurrentTimeTicks() const; |
| 278 | 274 |
| 279 scoped_refptr<predictors::LoggedInPredictorTable> logged_in_predictor_table(); | |
| 280 | |
| 281 protected: | 275 protected: |
| 282 class PrerenderData : public base::SupportsWeakPtr<PrerenderData> { | 276 class PrerenderData : public base::SupportsWeakPtr<PrerenderData> { |
| 283 public: | 277 public: |
| 284 struct OrderByExpiryTime; | 278 struct OrderByExpiryTime; |
| 285 | 279 |
| 286 PrerenderData(PrerenderManager* manager, | 280 PrerenderData(PrerenderManager* manager, |
| 287 PrerenderContents* contents, | 281 PrerenderContents* contents, |
| 288 base::TimeTicks expiry_time); | 282 base::TimeTicks expiry_time); |
| 289 | 283 |
| 290 ~PrerenderData(); | 284 ~PrerenderData(); |
| (...skipping 281 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 572 ScopedVector<OnCloseWebContentsDeleter> on_close_web_contents_deleters_; | 566 ScopedVector<OnCloseWebContentsDeleter> on_close_web_contents_deleters_; |
| 573 | 567 |
| 574 scoped_ptr<PrerenderHistory> prerender_history_; | 568 scoped_ptr<PrerenderHistory> prerender_history_; |
| 575 | 569 |
| 576 std::list<const PrerenderCondition*> prerender_conditions_; | 570 std::list<const PrerenderCondition*> prerender_conditions_; |
| 577 | 571 |
| 578 scoped_ptr<PrerenderHistograms> histograms_; | 572 scoped_ptr<PrerenderHistograms> histograms_; |
| 579 | 573 |
| 580 scoped_ptr<PrerenderLocalPredictor> local_predictor_; | 574 scoped_ptr<PrerenderLocalPredictor> local_predictor_; |
| 581 | 575 |
| 582 scoped_refptr<predictors::LoggedInPredictorTable> logged_in_predictor_table_; | |
| 583 | |
| 584 DISALLOW_COPY_AND_ASSIGN(PrerenderManager); | 576 DISALLOW_COPY_AND_ASSIGN(PrerenderManager); |
| 585 }; | 577 }; |
| 586 | 578 |
| 587 PrerenderManager* FindPrerenderManagerUsingRenderProcessId( | 579 PrerenderManager* FindPrerenderManagerUsingRenderProcessId( |
| 588 int render_process_id); | 580 int render_process_id); |
| 589 | 581 |
| 590 } // namespace prerender | 582 } // namespace prerender |
| 591 | 583 |
| 592 #endif // CHROME_BROWSER_PRERENDER_PRERENDER_MANAGER_H_ | 584 #endif // CHROME_BROWSER_PRERENDER_PRERENDER_MANAGER_H_ |
| OLD | NEW |