Go back to stepticker getting data direct from block queue.
[clinton/Smoothieware.git] / src / libs / StreamOutput.cpp
index 97317f0..8957bc8 100644 (file)
@@ -1,3 +1,29 @@
 #include "StreamOutput.h"
 
 NullStreamOutput StreamOutput::NullStream;
+
+int StreamOutput::printf(const char *format, ...)
+{
+    char b[64];
+    char *buffer;
+    // Make the message
+    va_list args;
+    va_start(args, format);
+
+    int size = vsnprintf(b, 64, format, args) + 1; // we add one to take into account space for the terminating \0
+
+    if (size < 64) {
+        buffer = b;
+    } else {
+        buffer = new char[size];
+        vsnprintf(buffer, size, format, args);
+    }
+    va_end(args);
+
+    puts(buffer);
+
+    if (buffer != b)
+        delete[] buffer;
+
+    return size - 1;
+}