Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
ICE-Application/src/add-ons/ICELog/ICELog.cpp@0:61364762ee0e, 2017-01-24 (annotated)
- Committer:
- jmarkel44
- Date:
- Tue Jan 24 19:05:33 2017 +0000
- Revision:
- 0:61364762ee0e
Port from IAR to Nucleo-F412 board
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
jmarkel44 | 0:61364762ee0e | 1 | #include "mbed.h" |
jmarkel44 | 0:61364762ee0e | 2 | #include <stdarg.h> |
jmarkel44 | 0:61364762ee0e | 3 | #include "ICELog.h" |
jmarkel44 | 0:61364762ee0e | 4 | |
jmarkel44 | 0:61364762ee0e | 5 | //using namespace mts; |
jmarkel44 | 0:61364762ee0e | 6 | |
jmarkel44 | 0:61364762ee0e | 7 | int ICELog::currentLevel = ICELog::WARNING_LEVEL; |
jmarkel44 | 0:61364762ee0e | 8 | |
jmarkel44 | 0:61364762ee0e | 9 | const char* ICELog::NONE_LABEL = "NONE"; |
jmarkel44 | 0:61364762ee0e | 10 | const char* ICELog::FATAL_LABEL = "FATAL"; |
jmarkel44 | 0:61364762ee0e | 11 | const char* ICELog::ERROR_LABEL = "ERROR"; |
jmarkel44 | 0:61364762ee0e | 12 | const char* ICELog::WARNING_LABEL = "WARNING"; |
jmarkel44 | 0:61364762ee0e | 13 | const char* ICELog::INFO_LABEL = "INFO"; |
jmarkel44 | 0:61364762ee0e | 14 | const char* ICELog::DEBUG_LABEL = "DEBUG"; |
jmarkel44 | 0:61364762ee0e | 15 | const char* ICELog::TRACE_LABEL = "TRACE"; |
jmarkel44 | 0:61364762ee0e | 16 | |
jmarkel44 | 0:61364762ee0e | 17 | void ICELog::printMessage(int level, const char* format, ...) { |
jmarkel44 | 0:61364762ee0e | 18 | if (printable(level)) { |
jmarkel44 | 0:61364762ee0e | 19 | va_list argptr; |
jmarkel44 | 0:61364762ee0e | 20 | va_start(argptr, format); |
jmarkel44 | 0:61364762ee0e | 21 | vprintf(format, argptr); |
jmarkel44 | 0:61364762ee0e | 22 | va_end(argptr); |
jmarkel44 | 0:61364762ee0e | 23 | } |
jmarkel44 | 0:61364762ee0e | 24 | } |
jmarkel44 | 0:61364762ee0e | 25 | |
jmarkel44 | 0:61364762ee0e | 26 | bool ICELog::printable(int level) { |
jmarkel44 | 0:61364762ee0e | 27 | return level <= currentLevel; |
jmarkel44 | 0:61364762ee0e | 28 | } |
jmarkel44 | 0:61364762ee0e | 29 | |
jmarkel44 | 0:61364762ee0e | 30 | void ICELog::setLogLevel(int level) { |
jmarkel44 | 0:61364762ee0e | 31 | if (level < NONE_LEVEL) |
jmarkel44 | 0:61364762ee0e | 32 | currentLevel = NONE_LEVEL; |
jmarkel44 | 0:61364762ee0e | 33 | else if (level > TRACE_LEVEL) |
jmarkel44 | 0:61364762ee0e | 34 | currentLevel = TRACE_LEVEL; |
jmarkel44 | 0:61364762ee0e | 35 | else |
jmarkel44 | 0:61364762ee0e | 36 | currentLevel = level; |
jmarkel44 | 0:61364762ee0e | 37 | } |
jmarkel44 | 0:61364762ee0e | 38 | |
jmarkel44 | 0:61364762ee0e | 39 | int ICELog::getLogLevel() { |
jmarkel44 | 0:61364762ee0e | 40 | return currentLevel; |
jmarkel44 | 0:61364762ee0e | 41 | } |
jmarkel44 | 0:61364762ee0e | 42 | |
jmarkel44 | 0:61364762ee0e | 43 | const char* ICELog::getLogLevelString() { |
jmarkel44 | 0:61364762ee0e | 44 | switch (currentLevel) { |
jmarkel44 | 0:61364762ee0e | 45 | case NONE_LEVEL: |
jmarkel44 | 0:61364762ee0e | 46 | return NONE_LABEL; |
jmarkel44 | 0:61364762ee0e | 47 | case FATAL_LEVEL: |
jmarkel44 | 0:61364762ee0e | 48 | return FATAL_LABEL; |
jmarkel44 | 0:61364762ee0e | 49 | case ERROR_LEVEL: |
jmarkel44 | 0:61364762ee0e | 50 | return ERROR_LABEL; |
jmarkel44 | 0:61364762ee0e | 51 | case WARNING_LEVEL: |
jmarkel44 | 0:61364762ee0e | 52 | return WARNING_LABEL; |
jmarkel44 | 0:61364762ee0e | 53 | case INFO_LEVEL: |
jmarkel44 | 0:61364762ee0e | 54 | return INFO_LABEL; |
jmarkel44 | 0:61364762ee0e | 55 | case DEBUG_LEVEL: |
jmarkel44 | 0:61364762ee0e | 56 | return DEBUG_LABEL; |
jmarkel44 | 0:61364762ee0e | 57 | case TRACE_LEVEL: |
jmarkel44 | 0:61364762ee0e | 58 | return TRACE_LABEL; |
jmarkel44 | 0:61364762ee0e | 59 | default: |
jmarkel44 | 0:61364762ee0e | 60 | return "unknown"; |
jmarkel44 | 0:61364762ee0e | 61 | } |
jmarkel44 | 0:61364762ee0e | 62 | } |
jmarkel44 | 0:61364762ee0e | 63 |