#ifndef LOCAL_LOG_DEF_H
#define LOCAL_LOG_DEF_H

/* Log enablers, each of these independent */

#define PROCESS_VERBOSE (0) /* process log messages */
#define EXTRA_VERBOSE   (0) /* verbose log messages */
#define SYSFS_VERBOSE   (0) /* log sysfs interactions as cat/echo for repro
                               purpose on a shell */
#define FUNC_ENTRY      (0) /* log entry in all one-time functions */

/* Note that enabling this logs may affect performance */
#define HANDLER_ENTRY   (0) /* log entry in all handler functions */
#define ENG_VERBOSE     (0) /* log some a lot more info about the internals */
#define INPUT_DATA      (0) /* log the data input from the events */
#define HANDLER_DATA    (0) /* log the data fetched from the handlers */

#if defined ANDROID_JELLYBEAN
#define LOGV            ALOGV
#define LOGV_IF         ALOGV_IF
#define LOGD            ALOGD
#define LOGD_IF         ALOGD_IF
#define LOGI            ALOGI
#define LOGI_IF         ALOGI_IF
#define LOGW            ALOGW
#define LOGW_IF         ALOGW_IF
#define LOGE            ALOGE
#define LOGE_IF         ALOGE_IF
#define IF_LOGV         IF_ALOGV
#define IF_LOGD         IF_ALOGD
#define IF_LOGI         IF_ALOGI
#define IF_LOGW         IF_ALOGW
#define IF_LOGE         IF_ALOGE
#define LOG_ASSERT      ALOG_ASSERT
#define LOG                     ALOG
#define IF_LOG          IF_ALOG
#else
#warning "build for ICS or earlier version"
#endif


#define FUNC_LOG \
            LOGV("%s", __PRETTY_FUNCTION__)
#define VFUNC_LOG \
            LOGV_IF(FUNC_ENTRY, "Entering function '%s'", __PRETTY_FUNCTION__)
#define VHANDLER_LOG \
            LOGV_IF(HANDLER_ENTRY, "Entering handler '%s'", __PRETTY_FUNCTION__)

#endif /*ifndef LOCAL_LOG_DEF_H */
