Erick / Mbed 2 deprecated ICE-F412

Dependencies:   mbed-rtos mbed

ICE-Application/src/add-ons/ICELog/ICELog.cpp

Committer:
jmarkel44
Date:
2017-01-24
Revision:
0:61364762ee0e

File content as of revision 0:61364762ee0e:

#include "mbed.h"
#include <stdarg.h>
#include "ICELog.h"
 
//using namespace mts;
 
int ICELog::currentLevel = ICELog::WARNING_LEVEL;
 
const char* ICELog::NONE_LABEL = "NONE";
const char* ICELog::FATAL_LABEL = "FATAL";
const char* ICELog::ERROR_LABEL = "ERROR";
const char* ICELog::WARNING_LABEL = "WARNING";
const char* ICELog::INFO_LABEL = "INFO";
const char* ICELog::DEBUG_LABEL = "DEBUG";
const char* ICELog::TRACE_LABEL = "TRACE";
 
void ICELog::printMessage(int level, const char* format, ...) {
    if (printable(level)) {
        va_list argptr;
        va_start(argptr, format);
        vprintf(format, argptr);
        va_end(argptr);
    }
}
 
bool ICELog::printable(int level) {
    return level <= currentLevel;
}
 
void ICELog::setLogLevel(int level) {
    if (level < NONE_LEVEL)
        currentLevel = NONE_LEVEL;
    else if (level > TRACE_LEVEL)
        currentLevel = TRACE_LEVEL;
    else
    currentLevel = level;
}
 
int ICELog::getLogLevel() {
    return currentLevel;
}
 
const char* ICELog::getLogLevelString() {
    switch (currentLevel) {
        case NONE_LEVEL:
            return NONE_LABEL;
        case FATAL_LEVEL:
            return FATAL_LABEL;
        case ERROR_LEVEL:
            return ERROR_LABEL;
        case WARNING_LEVEL:
            return WARNING_LABEL;
        case INFO_LEVEL:
            return INFO_LABEL;
        case DEBUG_LEVEL:
            return DEBUG_LABEL;
        case TRACE_LEVEL:
            return TRACE_LABEL;
        default:
            return "unknown";
    }
}