Fork to see if I can get working

Dependencies:   BufferedSerial OneWire WinbondSPIFlash libxDot-dev-mbed5-deprecated

Fork of xDotBridge_update_test20180823 by Matt Briggs

Committer:
mbriggs_vortex
Date:
Wed Nov 29 13:54:36 2017 -0700
Revision:
100:0882cf295f8e
Parent:
63:e1efbe3402d9
Adding relaese bin to repo

Who changed what in which revision?

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