1 /* 2 * Copyright (C) 2011 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 #ifndef ANDROID_RTL_PROPERTIES_H 18 #define ANDROID_RTL_PROPERTIES_H 19 20 #include <cutils/properties.h> 21 #include <stdlib.h> 22 23 namespace android { 24 25 /** 26 * Debug level for app developers. 27 */ 28 #define RTL_PROPERTY_DEBUG "rtl.debug_level" 29 30 /** 31 * Debug levels. Debug levels are used as flags. 32 */ 33 enum RtlDebugLevel { 34 kRtlDebugDisabled = 0, 35 kRtlDebugMemory = 1, 36 kRtlDebugCaches = 2, 37 kRtlDebugAllocations = 3 38 }; 39 40 static RtlDebugLevel readRtlDebugLevel() { 41 char property[PROPERTY_VALUE_MAX]; 42 if (property_get(RTL_PROPERTY_DEBUG, property, NULL) > 0) { 43 return (RtlDebugLevel) atoi(property); 44 } 45 return kRtlDebugDisabled; 46 } 47 48 // Define if we want to use Harfbuzz (1) or not (0) 49 #define RTL_USE_HARFBUZZ 1 50 51 // Define if we want (1) to have Advances debug values or not (0) 52 #define DEBUG_ADVANCES 0 53 54 // Define if we want (1) to have Glyphs debug values or not (0) 55 #define DEBUG_GLYPHS 0 56 57 } // namespace android 58 #endif // ANDROID_RTL_PROPERTIES_H 59