Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1282)

Side by Side Diff: third_party/WebKit/Source/core/timing/Performance.h

Issue 2343553005: enable / disable Long Task instrumentation based on presence of LongTask observer (Closed)
Patch Set: address review comments Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2010 Google Inc. All rights reserved. 2 * Copyright (C) 2010 Google Inc. All rights reserved.
3 * Copyright (C) 2012 Intel Inc. All rights reserved. 3 * Copyright (C) 2012 Intel Inc. All rights reserved.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are 6 * modification, are permitted provided that the following conditions are
7 * met: 7 * met:
8 * 8 *
9 * * Redistributions of source code must retain the above copyright 9 * * Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 23 matching lines...) Expand all
34 34
35 #include "core/CoreExport.h" 35 #include "core/CoreExport.h"
36 #include "core/frame/DOMWindowProperty.h" 36 #include "core/frame/DOMWindowProperty.h"
37 #include "core/timing/MemoryInfo.h" 37 #include "core/timing/MemoryInfo.h"
38 #include "core/timing/PerformanceBase.h" 38 #include "core/timing/PerformanceBase.h"
39 #include "core/timing/PerformanceNavigation.h" 39 #include "core/timing/PerformanceNavigation.h"
40 #include "core/timing/PerformanceTiming.h" 40 #include "core/timing/PerformanceTiming.h"
41 41
42 namespace blink { 42 namespace blink {
43 43
44 class InspectorWebPerfAgent;
45
44 class CORE_EXPORT Performance final : public PerformanceBase, public DOMWindowPr operty { 46 class CORE_EXPORT Performance final : public PerformanceBase, public DOMWindowPr operty {
45 DEFINE_WRAPPERTYPEINFO(); 47 DEFINE_WRAPPERTYPEINFO();
46 USING_GARBAGE_COLLECTED_MIXIN(Performance); 48 USING_GARBAGE_COLLECTED_MIXIN(Performance);
49 friend class PerformanceTest;
47 public: 50 public:
48 static Performance* create(LocalFrame* frame) 51 static Performance* create(LocalFrame* frame)
49 { 52 {
50 return new Performance(frame); 53 return new Performance(frame);
51 } 54 }
52 ~Performance() override; 55 ~Performance() override;
53 56
54 ExecutionContext* getExecutionContext() const override; 57 ExecutionContext* getExecutionContext() const override;
55 58
56 MemoryInfo* memory(); 59 MemoryInfo* memory();
57 PerformanceNavigation* navigation() const; 60 PerformanceNavigation* navigation() const;
58 PerformanceTiming* timing() const override; 61 PerformanceTiming* timing() const override;
59 62
63 void updateLongTaskInstrumentation() override;
64
60 DECLARE_VIRTUAL_TRACE(); 65 DECLARE_VIRTUAL_TRACE();
61 66
62 private: 67 private:
63 explicit Performance(LocalFrame*); 68 explicit Performance(LocalFrame*);
64 69
65 mutable Member<PerformanceNavigation> m_navigation; 70 mutable Member<PerformanceNavigation> m_navigation;
66 mutable Member<PerformanceTiming> m_timing; 71 mutable Member<PerformanceTiming> m_timing;
72 mutable Member<InspectorWebPerfAgent> m_longTaskInspectorAgent;
67 }; 73 };
68 74
69 } // namespace blink 75 } // namespace blink
70 76
71 #endif // Performance_h 77 #endif // Performance_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698