#include "tele2json.h"
#include "log.h"
-size_t tele2json( char *buf, size_t size, struct telemetry_state_t *tele ) {
+size_t tele2json( char *buf, size_t size, const struct telemetry_state_t *tele ) {
size_t n = 0;
- if ( NULL == tele )
+ if ( NULL == tele ) {
+ EPRINT( "Telemetry pointer is NULL!\n" );
return 0;
+ }
-#define CHKSIZE do{ if ( n >= size ) return 0; }while(0)
+#define CHKSIZE do{ if ( n >= size ) { EPRINT("Buffer too small @%u!\n",(unsigned)n); return 0; } }while(0)
CHKSIZE;
n += snprintf( buf+n, size-n, "{\n" ); CHKSIZE;
n += snprintf( buf+n, size-n, " \"dummy\": 0\n" ); CHKSIZE;
n += snprintf( buf+n, size-n, "}\n" ); CHKSIZE;
+ DPRINT( "Generated %u bytes of JSON data.\n", (unsigned)n );
return n;
#undef CHKSIZE
}
#include "telemetry.h"
-extern size_t tele2json( char *buf, size_t size, struct telemetry_state_t *tele );
+extern size_t tele2json( char *buf, size_t size, const struct telemetry_state_t *tele );
#ifdef __cplusplus
}