Trace.java revision 9d46a01e044696eb4d101778992fed4966520251
15738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/*
25738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Copyright (C) 2013 The Android Open Source Project
35738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *
45738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License");
55738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * you may not use this file except in compliance with the License.
65738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * You may obtain a copy of the License at
75738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *
85738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *      http://www.apache.org/licenses/LICENSE-2.0
95738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project *
105738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Unless required by applicable law or agreed to in writing, software
115738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS,
125738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
135738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * See the License for the specific language governing permissions and
145738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * limitations under the License.
155738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project */
165738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
175738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectpackage com.android.bitmap.util;
185738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
195738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectimport android.os.Build;
205738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
215738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project/**
225738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project * Stand-in for {@link android.os.Trace}.
235738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project */
245738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Projectpublic abstract class Trace {
255738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
265738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    /**
275738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project     * Begins systrace tracing for a given tag. No-op on unsupported platform versions.
285738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project     *
295738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project     * @param tag systrace tag to use
305738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project     *
315738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project     * @see android.os.Trace#beginSection(String)
325738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project     */
335738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    public static void beginSection(String tag) {
345738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) {
355738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project            android.os.Trace.beginSection(tag);
365738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project        }
375738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    }
385738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
395738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    /**
405738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project     * Ends systrace tracing for the most recently begun section. No-op on unsupported platform
415738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project     * versions.
425738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project     *
435738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project     * @see android.os.Trace#endSection()
445738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project     */
455738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    public static void endSection() {
465738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) {
475738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project            android.os.Trace.endSection();
485738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project        }
495738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project    }
505738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project
515738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project}
525738f83aeb59361a0a2eda2460113f6dc919427The Android Open Source Project