OLD | NEW |
1 // Copyright (c) 2015, the Dartino project authors. Please see the AUTHORS file | 1 // Copyright (c) 2015, the Dartino project authors. Please see the AUTHORS file |
2 // for details. All rights reserved. Use of this source code is governed by a | 2 // for details. All rights reserved. Use of this source code is governed by a |
3 // BSD-style license that can be found in the LICENSE.md file. | 3 // BSD-style license that can be found in the LICENSE.md file. |
4 | 4 |
5 #ifndef SRC_VM_TICK_SAMPLER_H_ | 5 #ifndef SRC_VM_TICK_SAMPLER_H_ |
6 #define SRC_VM_TICK_SAMPLER_H_ | 6 #define SRC_VM_TICK_SAMPLER_H_ |
7 | 7 |
8 #include "src/shared/atomic.h" | 8 #include "src/shared/atomic.h" |
9 #include "src/shared/globals.h" | 9 #include "src/shared/globals.h" |
10 #include "src/shared/platform.h" | 10 #include "src/shared/platform.h" |
11 | 11 |
12 namespace fletch { | 12 namespace dartino { |
13 | 13 |
14 class Process; | 14 class Process; |
15 | 15 |
16 // TickSampler periodically samples and collects the state of the VM. | 16 // TickSampler periodically samples and collects the state of the VM. |
17 class TickSampler { | 17 class TickSampler { |
18 public: | 18 public: |
19 // Initializes the sampler, called once. | 19 // Initializes the sampler, called once. |
20 static void Setup(); | 20 static void Setup(); |
21 // Teardown the sampler, reverses the SetUp call. | 21 // Teardown the sampler, reverses the SetUp call. |
22 static void Teardown(); | 22 static void Teardown(); |
23 | 23 |
24 // Tells whether the profiler is active. | 24 // Tells whether the profiler is active. |
25 static bool is_active() { return is_active_; } | 25 static bool is_active() { return is_active_; } |
26 | 26 |
27 private: | 27 private: |
28 static Atomic<bool> is_active_; | 28 static Atomic<bool> is_active_; |
29 }; | 29 }; |
30 | 30 |
31 } // namespace fletch | 31 } // namespace dartino |
32 | 32 |
33 #endif // SRC_VM_TICK_SAMPLER_H_ | 33 #endif // SRC_VM_TICK_SAMPLER_H_ |
OLD | NEW |