Utility library for MTS Socket Modem Arduino Shield devices from Multi-Tech Systems

Dependents:   mtsas mtsas thermostat_fan_demo--fan mtsas ... more

NOTE: MTS-Utils has moved to GitHub. This version will not be updated. For updates, go to the GitHub version.

Committer:
Mike Fiore
Date:
Tue Mar 21 15:26:50 2017 -0500
Revision:
15:ae12624eb600
Parent:
13:4709c2dfcd11
update from git revision 37b619a6e4e6e3b49b64c402429cdd8710d960a6

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Mike Fiore 6:fca9bc67b15f 1 #include "mbed.h"
Mike Fiore 1:92c0b062d84d 2 #include <stdarg.h>
Mike Fiore 1:92c0b062d84d 3 #include "MTSLog.h"
Mike Fiore 1:92c0b062d84d 4
Mike Fiore 1:92c0b062d84d 5 using namespace mts;
Mike Fiore 1:92c0b062d84d 6
Mike Fiore 1:92c0b062d84d 7 int MTSLog::currentLevel = MTSLog::WARNING_LEVEL;
Mike Fiore 1:92c0b062d84d 8
Mike Fiore 1:92c0b062d84d 9 const char* MTSLog::NONE_LABEL = "NONE";
Mike Fiore 1:92c0b062d84d 10 const char* MTSLog::FATAL_LABEL = "FATAL";
Mike Fiore 1:92c0b062d84d 11 const char* MTSLog::ERROR_LABEL = "ERROR";
Mike Fiore 1:92c0b062d84d 12 const char* MTSLog::WARNING_LABEL = "WARNING";
Mike Fiore 1:92c0b062d84d 13 const char* MTSLog::INFO_LABEL = "INFO";
Mike Fiore 1:92c0b062d84d 14 const char* MTSLog::DEBUG_LABEL = "DEBUG";
Mike Fiore 1:92c0b062d84d 15 const char* MTSLog::TRACE_LABEL = "TRACE";
Mike Fiore 1:92c0b062d84d 16
Mike Fiore 13:4709c2dfcd11 17 void MTSLog::printMessage(int level, const char* format, ...) {
Mike Fiore 1:92c0b062d84d 18 if (printable(level)) {
Mike Fiore 1:92c0b062d84d 19 va_list argptr;
Mike Fiore 1:92c0b062d84d 20 va_start(argptr, format);
Mike Fiore 1:92c0b062d84d 21 vprintf(format, argptr);
Mike Fiore 1:92c0b062d84d 22 va_end(argptr);
Mike Fiore 1:92c0b062d84d 23 }
Mike Fiore 1:92c0b062d84d 24 }
Mike Fiore 1:92c0b062d84d 25
Mike Fiore 13:4709c2dfcd11 26 bool MTSLog::printable(int level) {
Mike Fiore 1:92c0b062d84d 27 return level <= currentLevel;
Mike Fiore 1:92c0b062d84d 28 }
Mike Fiore 1:92c0b062d84d 29
Mike Fiore 13:4709c2dfcd11 30 void MTSLog::setLogLevel(int level) {
Mike Fiore 13:4709c2dfcd11 31 if (level < NONE_LEVEL)
Mike Fiore 13:4709c2dfcd11 32 currentLevel = NONE_LEVEL;
Mike Fiore 13:4709c2dfcd11 33 else if (level > TRACE_LEVEL)
Mike Fiore 13:4709c2dfcd11 34 currentLevel = TRACE_LEVEL;
Mike Fiore 13:4709c2dfcd11 35 else
Mike Fiore 1:92c0b062d84d 36 currentLevel = level;
Mike Fiore 1:92c0b062d84d 37 }
Mike Fiore 1:92c0b062d84d 38
Mike Fiore 1:92c0b062d84d 39 int MTSLog::getLogLevel() {
Mike Fiore 1:92c0b062d84d 40 return currentLevel;
Mike Fiore 1:92c0b062d84d 41 }
Mike Fiore 1:92c0b062d84d 42
Mike Fiore 1:92c0b062d84d 43 const char* MTSLog::getLogLevelString() {
Mike Fiore 1:92c0b062d84d 44 switch (currentLevel) {
Mike Fiore 1:92c0b062d84d 45 case NONE_LEVEL:
Mike Fiore 1:92c0b062d84d 46 return NONE_LABEL;
Mike Fiore 1:92c0b062d84d 47 case FATAL_LEVEL:
Mike Fiore 1:92c0b062d84d 48 return FATAL_LABEL;
Mike Fiore 1:92c0b062d84d 49 case ERROR_LEVEL:
Mike Fiore 1:92c0b062d84d 50 return ERROR_LABEL;
Mike Fiore 1:92c0b062d84d 51 case WARNING_LEVEL:
Mike Fiore 1:92c0b062d84d 52 return WARNING_LABEL;
Mike Fiore 1:92c0b062d84d 53 case INFO_LEVEL:
Mike Fiore 1:92c0b062d84d 54 return INFO_LABEL;
Mike Fiore 1:92c0b062d84d 55 case DEBUG_LEVEL:
Mike Fiore 1:92c0b062d84d 56 return DEBUG_LABEL;
Mike Fiore 1:92c0b062d84d 57 case TRACE_LEVEL:
Mike Fiore 1:92c0b062d84d 58 return TRACE_LABEL;
Mike Fiore 1:92c0b062d84d 59 default:
Mike Fiore 1:92c0b062d84d 60 return "unknown";
Mike Fiore 1:92c0b062d84d 61 }
Mike Fiore 1:92c0b062d84d 62 }