Changeset 1695


Ignore:
Timestamp:
Aug 5, 2012, 3:35:55 PM (8 years ago)
Author:
sam
Message:

android: simplify the logger code.

Location:
trunk/src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/log.cpp

    r1646 r1695  
    3939    va_list ap;
    4040    va_start(ap, fmt);
    41 #if defined __ANDROID__
    42     __android_log_vprint(ANDROID_LOG_DEBUG, "LOL", fmt, ap);
    43 #else
    44     Helper("DEBUG: ", fmt, ap);
    45 #endif
     41    Helper(DebugMessage, fmt, ap);
    4642    va_end(ap);
    4743}
     
    5147    va_list ap;
    5248    va_start(ap, fmt);
    53 #if defined __ANDROID__
    54     __android_log_vprint(ANDROID_LOG_INFO, "LOL", fmt, ap);
    55 #else
    56     Helper("INFO: ", fmt, ap);
    57 #endif
     49    Helper(InfoMessage, fmt, ap);
    5850    va_end(ap);
    5951}
     
    6355    va_list ap;
    6456    va_start(ap, fmt);
    65 #if defined __ANDROID__
    66     __android_log_vprint(ANDROID_LOG_WARN, "LOL", fmt, ap);
    67 #else
    68     Helper("WARN: ", fmt, ap);
    69 #endif
     57    Helper(WarnMessage, fmt, ap);
    7058    va_end(ap);
    7159}
     
    7563    va_list ap;
    7664    va_start(ap, fmt);
    77 #if defined __ANDROID__
    78     __android_log_vprint(ANDROID_LOG_ERROR, "LOL", fmt, ap);
    79 #else
    80     Helper("ERROR: ", fmt, ap);
    81 #endif
     65    Helper(ErrorMessage, fmt, ap);
    8266    va_end(ap);
    8367}
     
    8771 */
    8872
    89 void Log::Helper(char const *prefix, char const *fmt, va_list ap)
     73void Log::Helper(MessageType type, char const *fmt, va_list ap)
    9074{
    91 #if defined _WIN32
     75#if defined __ANDROID__
     76    int prio[] =
     77    {
     78        ANDROID_LOG_DEBUG,
     79        ANDROID_LOG_INFO,
     80        ANDROID_LOG_WARN,
     81        ANDROID_LOG_ERROR
     82    };
     83
     84    //__android_log_print(prio[type], "LOL", "thread %ld", pthread_self());
     85    __android_log_vprint(prio[type], "LOL", fmt, ap);
     86
     87#else
     88    char const *prefix[] =
     89    {
     90        "DEBUG",
     91        "INFO",
     92        "WARN",
     93        "ERROR",
     94    };
     95
     96#   if defined _WIN32
    9297    char buf[4096];
    9398    vsnprintf(buf, 4095, fmt, ap);
    9499    buf[4095] = '\0';
    95     OutputDebugString(prefix);
     100    OutputDebugString(prefix[type]);
     101    OutputDebugString(": ");
    96102    OutputDebugString(buf);
    97 #else
    98     fprintf(stderr, "%s", prefix);
     103#   else
     104    fprintf(stderr, "%s: ", prefix[type]);
    99105    vfprintf(stderr, fmt, ap);
     106#   endif
    100107#endif
    101108}
  • trunk/src/log.h

    r1646 r1695  
    3939
    4040private:
    41     static void Helper(char const *prefix, char const *format, va_list ap);
     41    enum MessageType
     42    {
     43        DebugMessage,
     44        InfoMessage,
     45        WarnMessage,
     46        ErrorMessage
     47    };
     48
     49    static void Helper(MessageType type, char const *fmt, va_list ap);
    4250};
    4351
Note: See TracChangeset for help on using the changeset viewer.