OLD | NEW |
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2014, the Dart 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 file. | 3 // BSD-style license that can be found in the LICENSE file. |
4 | 4 |
5 #ifndef RUNTIME_VM_METRICS_H_ | 5 #ifndef RUNTIME_VM_METRICS_H_ |
6 #define RUNTIME_VM_METRICS_H_ | 6 #define RUNTIME_VM_METRICS_H_ |
7 | 7 |
8 #include "vm/allocation.h" | 8 #include "vm/allocation.h" |
9 | 9 |
10 namespace dart { | 10 namespace dart { |
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
102 | 102 |
103 void RegisterWithIsolate(); | 103 void RegisterWithIsolate(); |
104 void DeregisterWithIsolate(); | 104 void DeregisterWithIsolate(); |
105 void RegisterWithVM(); | 105 void RegisterWithVM(); |
106 void DeregisterWithVM(); | 106 void DeregisterWithVM(); |
107 | 107 |
108 static Metric* vm_list_head_; | 108 static Metric* vm_list_head_; |
109 DISALLOW_COPY_AND_ASSIGN(Metric); | 109 DISALLOW_COPY_AND_ASSIGN(Metric); |
110 }; | 110 }; |
111 | 111 |
112 | |
113 // A Metric class that reports the maximum value observed. | 112 // A Metric class that reports the maximum value observed. |
114 // Initial maximum is kMinInt64. | 113 // Initial maximum is kMinInt64. |
115 class MaxMetric : public Metric { | 114 class MaxMetric : public Metric { |
116 public: | 115 public: |
117 MaxMetric(); | 116 MaxMetric(); |
118 | 117 |
119 void SetValue(int64_t new_value); | 118 void SetValue(int64_t new_value); |
120 }; | 119 }; |
121 | 120 |
122 | |
123 // A Metric class that reports the minimum value observed. | 121 // A Metric class that reports the minimum value observed. |
124 // Initial minimum is kMaxInt64. | 122 // Initial minimum is kMaxInt64. |
125 class MinMetric : public Metric { | 123 class MinMetric : public Metric { |
126 public: | 124 public: |
127 MinMetric(); | 125 MinMetric(); |
128 | 126 |
129 void SetValue(int64_t new_value); | 127 void SetValue(int64_t new_value); |
130 }; | 128 }; |
131 | 129 |
132 | |
133 class MetricHeapOldUsed : public Metric { | 130 class MetricHeapOldUsed : public Metric { |
134 protected: | 131 protected: |
135 virtual int64_t Value() const; | 132 virtual int64_t Value() const; |
136 }; | 133 }; |
137 | 134 |
138 | |
139 class MetricHeapOldCapacity : public Metric { | 135 class MetricHeapOldCapacity : public Metric { |
140 protected: | 136 protected: |
141 virtual int64_t Value() const; | 137 virtual int64_t Value() const; |
142 }; | 138 }; |
143 | 139 |
144 | |
145 class MetricHeapOldExternal : public Metric { | 140 class MetricHeapOldExternal : public Metric { |
146 protected: | 141 protected: |
147 virtual int64_t Value() const; | 142 virtual int64_t Value() const; |
148 }; | 143 }; |
149 | 144 |
150 | |
151 class MetricHeapNewUsed : public Metric { | 145 class MetricHeapNewUsed : public Metric { |
152 protected: | 146 protected: |
153 virtual int64_t Value() const; | 147 virtual int64_t Value() const; |
154 }; | 148 }; |
155 | 149 |
156 | |
157 class MetricHeapNewCapacity : public Metric { | 150 class MetricHeapNewCapacity : public Metric { |
158 protected: | 151 protected: |
159 virtual int64_t Value() const; | 152 virtual int64_t Value() const; |
160 }; | 153 }; |
161 | 154 |
162 | |
163 class MetricHeapNewExternal : public Metric { | 155 class MetricHeapNewExternal : public Metric { |
164 protected: | 156 protected: |
165 virtual int64_t Value() const; | 157 virtual int64_t Value() const; |
166 }; | 158 }; |
167 | 159 |
168 | |
169 class MetricIsolateCount : public Metric { | 160 class MetricIsolateCount : public Metric { |
170 protected: | 161 protected: |
171 virtual int64_t Value() const; | 162 virtual int64_t Value() const; |
172 }; | 163 }; |
173 | 164 |
174 | |
175 class MetricPeakRSS : public Metric { | 165 class MetricPeakRSS : public Metric { |
176 protected: | 166 protected: |
177 virtual int64_t Value() const; | 167 virtual int64_t Value() const; |
178 }; | 168 }; |
179 | 169 |
180 | |
181 class MetricHeapUsed : public Metric { | 170 class MetricHeapUsed : public Metric { |
182 protected: | 171 protected: |
183 virtual int64_t Value() const; | 172 virtual int64_t Value() const; |
184 }; | 173 }; |
185 | 174 |
186 } // namespace dart | 175 } // namespace dart |
187 | 176 |
188 #endif // RUNTIME_VM_METRICS_H_ | 177 #endif // RUNTIME_VM_METRICS_H_ |
OLD | NEW |