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

Side by Side Diff: webrtc/sdk/android/src/jni/androidmetrics_jni.cc

Issue 2998403002: Android: Update convenience macro defining JNI-accessible methods (Closed)
Patch Set: Created 3 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 2016 The WebRTC project authors. All Rights Reserved. 2 * Copyright 2016 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
11 #include <map> 11 #include <map>
12 #include <memory> 12 #include <memory>
13 13
14 #include "webrtc/sdk/android/src/jni/classreferenceholder.h" 14 #include "webrtc/sdk/android/src/jni/classreferenceholder.h"
15 #include "webrtc/sdk/android/src/jni/jni_helpers.h" 15 #include "webrtc/sdk/android/src/jni/jni_helpers.h"
16 #include "webrtc/system_wrappers/include/metrics.h" 16 #include "webrtc/system_wrappers/include/metrics.h"
17 #include "webrtc/system_wrappers/include/metrics_default.h" 17 #include "webrtc/system_wrappers/include/metrics_default.h"
18 18
19 // Enables collection of native histograms and creating them. 19 // Enables collection of native histograms and creating them.
20 namespace webrtc_jni { 20 namespace webrtc_jni {
21 21
22 JOW(void, Metrics_nativeEnable)(JNIEnv* jni, jclass) { 22 JNI_FUNCTION_DECLARATION(void, Metrics_nativeEnable, JNIEnv* jni, jclass) {
23 webrtc::metrics::Enable(); 23 webrtc::metrics::Enable();
24 } 24 }
25 25
26 // Gets and clears native histograms. 26 // Gets and clears native histograms.
27 JOW(jobject, Metrics_nativeGetAndReset)(JNIEnv* jni, jclass) { 27 JNI_FUNCTION_DECLARATION(jobject,
28 Metrics_nativeGetAndReset,
29 JNIEnv* jni,
30 jclass) {
28 jclass j_metrics_class = jni->FindClass("org/webrtc/Metrics"); 31 jclass j_metrics_class = jni->FindClass("org/webrtc/Metrics");
29 jmethodID j_add = 32 jmethodID j_add =
30 GetMethodID(jni, j_metrics_class, "add", 33 GetMethodID(jni, j_metrics_class, "add",
31 "(Ljava/lang/String;Lorg/webrtc/Metrics$HistogramInfo;)V"); 34 "(Ljava/lang/String;Lorg/webrtc/Metrics$HistogramInfo;)V");
32 jclass j_info_class = jni->FindClass("org/webrtc/Metrics$HistogramInfo"); 35 jclass j_info_class = jni->FindClass("org/webrtc/Metrics$HistogramInfo");
33 jmethodID j_add_sample = GetMethodID(jni, j_info_class, "addSample", "(II)V"); 36 jmethodID j_add_sample = GetMethodID(jni, j_info_class, "addSample", "(II)V");
34 37
35 // Create |Metrics|. 38 // Create |Metrics|.
36 jobject j_metrics = jni->NewObject( 39 jobject j_metrics = jni->NewObject(
37 j_metrics_class, GetMethodID(jni, j_metrics_class, "<init>", "()V")); 40 j_metrics_class, GetMethodID(jni, j_metrics_class, "<init>", "()V"));
(...skipping 14 matching lines...) Expand all
52 jstring j_name = jni->NewStringUTF(kv.first.c_str()); 55 jstring j_name = jni->NewStringUTF(kv.first.c_str());
53 jni->CallVoidMethod(j_metrics, j_add, j_name, j_info); 56 jni->CallVoidMethod(j_metrics, j_add, j_name, j_info);
54 jni->DeleteLocalRef(j_name); 57 jni->DeleteLocalRef(j_name);
55 jni->DeleteLocalRef(j_info); 58 jni->DeleteLocalRef(j_info);
56 } 59 }
57 CHECK_EXCEPTION(jni); 60 CHECK_EXCEPTION(jni);
58 return j_metrics; 61 return j_metrics;
59 } 62 }
60 63
61 } // namespace webrtc_jni 64 } // namespace webrtc_jni
OLDNEW
« no previous file with comments | « webrtc/sdk/android/src/jni/androidmediaencoder_jni.cc ('k') | webrtc/sdk/android/src/jni/androidvideotracksource_jni.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698