13cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn/* 23cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn * Copyright (C) 2005-2017 The Android Open Source Project 33cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn * 43cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn * Licensed under the Apache License, Version 2.0 (the "License"); 53cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn * you may not use this file except in compliance with the License. 63cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn * You may obtain a copy of the License at 73cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn * 83cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn * http://www.apache.org/licenses/LICENSE-2.0 93cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn * 103cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn * Unless required by applicable law or agreed to in writing, software 113cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn * distributed under the License is distributed on an "AS IS" BASIS, 123cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 133cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn * See the License for the specific language governing permissions and 143cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn * limitations under the License. 153cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn */ 163cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn 173cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn#ifndef _LIBS_LOG_LOG_ID_H 183cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn#define _LIBS_LOG_LOG_ID_H 193cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn 203cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn#ifdef __cplusplus 213cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzynextern "C" { 223cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn#endif 233cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn 243cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn#ifndef log_id_t_defined 253cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn#define log_id_t_defined 263cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyntypedef enum log_id { 272ed51d708eda64516ec79ac6397f690de38f0075Mark Salyzyn LOG_ID_MIN = 0, 283cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn 292ed51d708eda64516ec79ac6397f690de38f0075Mark Salyzyn LOG_ID_MAIN = 0, 302ed51d708eda64516ec79ac6397f690de38f0075Mark Salyzyn LOG_ID_RADIO = 1, 312ed51d708eda64516ec79ac6397f690de38f0075Mark Salyzyn LOG_ID_EVENTS = 2, 322ed51d708eda64516ec79ac6397f690de38f0075Mark Salyzyn LOG_ID_SYSTEM = 3, 332ed51d708eda64516ec79ac6397f690de38f0075Mark Salyzyn LOG_ID_CRASH = 4, 342ed51d708eda64516ec79ac6397f690de38f0075Mark Salyzyn LOG_ID_SECURITY = 5, 352ed51d708eda64516ec79ac6397f690de38f0075Mark Salyzyn LOG_ID_KERNEL = 6, /* place last, third-parties can not use it */ 363cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn 372ed51d708eda64516ec79ac6397f690de38f0075Mark Salyzyn LOG_ID_MAX 383cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn} log_id_t; 393cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn#endif 403cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn#define sizeof_log_id_t sizeof(typeof_log_id_t) 413cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn#define typeof_log_id_t unsigned char 423cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn 433cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn/* 443cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn * Send a simple string to the log. 453cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn */ 462ed51d708eda64516ec79ac6397f690de38f0075Mark Salyzynint __android_log_buf_write(int bufID, int prio, const char* tag, 472ed51d708eda64516ec79ac6397f690de38f0075Mark Salyzyn const char* text); 482ed51d708eda64516ec79ac6397f690de38f0075Mark Salyzynint __android_log_buf_print(int bufID, int prio, const char* tag, 492ed51d708eda64516ec79ac6397f690de38f0075Mark Salyzyn const char* fmt, ...) 503cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn#if defined(__GNUC__) 513cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn __attribute__((__format__(printf, 4, 5))) 523cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn#endif 533cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn ; 543cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn 553cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn/* 563cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn * log_id_t helpers 573cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn */ 583cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzynlog_id_t android_name_to_log_id(const char* logName); 593cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzynconst char* android_log_id_to_name(log_id_t log_id); 603cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn 613cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn#ifdef __cplusplus 623cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn} 633cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn#endif 643cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn 653cdbdd522fbbb2611713805c72c6d741a91bcfd5Mark Salyzyn#endif /* _LIBS_LOG_LOG_ID_H */ 66