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

Side by Side Diff: test/cctest/profiler-extension.h

Issue 2117343006: Introduce v8::CpuProfiler::New and v8::CpuProfiler::Dispose API. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 4 years, 5 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 // Copyright 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 19 matching lines...) Expand all
30 #ifndef V8_TEST_CCTEST_PROFILER_EXTENSION_H_ 30 #ifndef V8_TEST_CCTEST_PROFILER_EXTENSION_H_
31 #define V8_TEST_CCTEST_PROFILER_EXTENSION_H_ 31 #define V8_TEST_CCTEST_PROFILER_EXTENSION_H_
32 32
33 #include "include/v8-profiler.h" 33 #include "include/v8-profiler.h"
34 34
35 namespace v8 { 35 namespace v8 {
36 namespace internal { 36 namespace internal {
37 37
38 class ProfilerExtension : public v8::Extension { 38 class ProfilerExtension : public v8::Extension {
39 public: 39 public:
40 class Scope {
41 public:
42 explicit Scope(v8::Isolate* isolate);
43 ~Scope();
44
45 static v8::CpuProfiler* profiler() { return profiler_; }
46
47 private:
48 friend class ProfilerExtension;
49 static v8::CpuProfiler* profiler_;
50 };
51
40 ProfilerExtension() : v8::Extension("v8/profiler", kSource) { } 52 ProfilerExtension() : v8::Extension("v8/profiler", kSource) { }
41 virtual v8::Local<v8::FunctionTemplate> GetNativeFunctionTemplate( 53 virtual v8::Local<v8::FunctionTemplate> GetNativeFunctionTemplate(
42 v8::Isolate* isolate, v8::Local<v8::String> name); 54 v8::Isolate* isolate, v8::Local<v8::String> name);
43 static v8::CpuProfile* last_profile; 55 static v8::CpuProfile* last_profile;
44 56
45 private: 57 private:
46 static void StartProfiling(const v8::FunctionCallbackInfo<v8::Value>& args); 58 static void StartProfiling(const v8::FunctionCallbackInfo<v8::Value>& args);
47 static void StopProfiling(const v8::FunctionCallbackInfo<v8::Value>& args); 59 static void StopProfiling(const v8::FunctionCallbackInfo<v8::Value>& args);
48 static void CollectSample(const v8::FunctionCallbackInfo<v8::Value>& args); 60 static void CollectSample(const v8::FunctionCallbackInfo<v8::Value>& args);
49 61
50 static const char* kSource; 62 static const char* kSource;
51 }; 63 };
52 64
53 65
54 } // namespace internal 66 } // namespace internal
55 } // namespace v8 67 } // namespace v8
56 68
57 #endif 69 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698