rsDebugHelper.h revision 84bf95dece5bdac4a56b6f40c160e85cc7bb9732
1d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines/* 2d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines * Copyright (C) 2013 The Android Open Source Project 3d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines * 4d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines * Licensed under the Apache License, Version 2.0 (the "License"); 5d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines * you may not use this file except in compliance with the License. 6d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines * You may obtain a copy of the License at 7d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines * 8d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines * http://www.apache.org/licenses/LICENSE-2.0 9d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines * 10d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines * Unless required by applicable law or agreed to in writing, software 11d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines * distributed under the License is distributed on an "AS IS" BASIS, 12d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines * See the License for the specific language governing permissions and 14d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines * limitations under the License. 15d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines */ 16d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines 17d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines#ifndef ANDROID_RS_DEBUG_HELPER_H 18d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines#define ANDROID_RS_DEBUG_HELPER_H 19d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines 20d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines#include "rsUtils.h" 2166f0a168c4227d4e302f4ffb21ec7e9d7b9ca828Jason Sams#include "rsInternalDefines.h" 22d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines 2384bf95dece5bdac4a56b6f40c160e85cc7bb9732Jason Sams#if !defined(RS_SERVER) && !defined(RS_COMPATIBILITY_LIB) 24d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines#include <utils/CallStack.h> 25d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines#endif 26d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines 27d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hinesnamespace android { 28d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hinesnamespace renderscript { 29d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines 30d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines 31d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hinesclass DebugHelper { 32d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hinespublic: 33d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines DebugHelper() { 3484bf95dece5bdac4a56b6f40c160e85cc7bb9732Jason Sams#if !defined(RS_SERVER) && !defined(RS_COMPATIBILITY_LIB) 35d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines mStack.update(2); 3684bf95dece5bdac4a56b6f40c160e85cc7bb9732Jason Sams#endif 37d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines } 38d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines 39d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines void dump() { 4084bf95dece5bdac4a56b6f40c160e85cc7bb9732Jason Sams#if !defined(RS_SERVER) && !defined(RS_COMPATIBILITY_LIB) 4184bf95dece5bdac4a56b6f40c160e85cc7bb9732Jason Sams String8 s = mStack.toString(); 4284bf95dece5bdac4a56b6f40c160e85cc7bb9732Jason Sams ALOGV("%s", s.string()); 4384bf95dece5bdac4a56b6f40c160e85cc7bb9732Jason Sams //mStack.dump(); 4484bf95dece5bdac4a56b6f40c160e85cc7bb9732Jason Sams#endif 45d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines } 46d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines 47d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hinesprivate: 4884bf95dece5bdac4a56b6f40c160e85cc7bb9732Jason Sams#if !defined(RS_SERVER) && !defined(RS_COMPATIBILITY_LIB) 49d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines CallStack mStack; 5084bf95dece5bdac4a56b6f40c160e85cc7bb9732Jason Sams#endif 51d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines}; 52d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines 53d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines 54d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines} // namespace renderscript 55d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines} // namespace android 56d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines 57d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines#endif //ANDROID_RS_DEBUG_HELPER_H 58d216dafa216f3329577ab624cdc5a5d1860ec035Stephen Hines 59