aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Embroidery/libembroidery/emb-logging.c
blob: 9a8b522566f8a981c2e4c71e6aa64d48b54d4460 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include "emb-logging.h"

#include <stdio.h>
#include <stdarg.h>

/* printf() abstraction. Uses Serial.print() on ARDUINO */
void embLog_print(const char* format, ...)
{
    /* TODO: log debug message in struct for later use */

#ifdef ARDUINO /* ARDUINO */
    char buff[256];
    va_list args;
    va_start(args, format);
    vsprintf(buff, format, args);
    va_end(args);
    inoLog_serial(buff);
#else /* ARDUINO */
    va_list args;
    va_start(args, format);
    vprintf(format, args);
    va_end(args);
#endif /* ARDUINO */
}

/* serious errors */
void embLog_error(const char* format, ...)
{
    /* TODO: log debug message in struct for later use */

#ifdef ARDUINO /* ARDUINO */
    char buff[256];
    va_list args;
    va_start(args, format);
    vsprintf(buff, format, args);
    va_end(args);
    inoLog_serial(strcat("ERROR: ", buff));
#else /* ARDUINO */
    va_list args;
    va_start(args, format);
    printf("ERROR: ");
    vprintf(format, args);
    va_end(args);
#endif /* ARDUINO */
}

/* kate: bom off; indent-mode cstyle; indent-width 4; replace-trailing-space-save on; */