Palacios Public Git Repository

To checkout Palacios execute

  git clone http://v3vee.org/palacios/palacios.web/palacios.git
This will give you the master branch. You probably want the devel branch or one of the release branches. To switch to the devel branch, simply execute
  cd palacios
  git checkout --track -b devel origin/devel
The other branches are similar.


created a test directory to hold test guest OSes
[palacios.git] / test / geekos_test_vm / include / libc / fmtout.h
diff --git a/test/geekos_test_vm/include/libc/fmtout.h b/test/geekos_test_vm/include/libc/fmtout.h
new file mode 100644 (file)
index 0000000..429d7fd
--- /dev/null
@@ -0,0 +1,37 @@
+/*
+ * Generalized support for printf()-style formatted output
+ * Copyright (c) 2004, David H. Hovemeyer <daveho@cs.umd.edu>
+ * $Revision: 1.1 $
+ *
+ * This is free software.  You are permitted to use,
+ * redistribute, and modify it as specified in the file "COPYING".
+ */
+
+#ifndef OUTPUT_H
+#define OUTPUT_H
+
+#include <stdarg.h>
+
+/*
+ * An output sink for Format_Output().
+ * Useful for emitting formatted output to a function
+ * or a buffer.
+ */
+struct Output_Sink {
+    /*
+     * Emit a single character of output.
+     * This is called for all output characters,
+     * in order.
+     */
+    void (*Emit)(struct Output_Sink *o, int ch);
+
+    /*
+     * Finish the formatted output. Called after all characters
+     * have been emitted.
+     */
+    void (*Finish)(struct Output_Sink *o);
+};
+
+int Format_Output(struct Output_Sink *q, const char *format, va_list ap);
+
+#endif /* OUTPUT_H */