Add qemu 2.4.0
[kvmfornfv.git] / qemu / roms / ipxe / src / include / ipxe / job.h
diff --git a/qemu/roms/ipxe/src/include/ipxe/job.h b/qemu/roms/ipxe/src/include/ipxe/job.h
new file mode 100644 (file)
index 0000000..a2369f7
--- /dev/null
@@ -0,0 +1,38 @@
+#ifndef _IPXE_JOB_H
+#define _IPXE_JOB_H
+
+/** @file
+ *
+ * Job control interfaces
+ *
+ */
+
+FILE_LICENCE ( GPL2_OR_LATER );
+
+#include <ipxe/interface.h>
+
+/** Job progress */
+struct job_progress {
+       /** Amount of operation completed so far
+        *
+        * The units for this quantity are arbitrary.  @c completed
+        * divded by @total should give something which approximately
+        * represents the progress through the operation.  For a
+        * download operation, using byte counts would make sense.
+        */
+       unsigned long completed;
+       /** Total operation size
+        *
+        * See @c completed.  A zero value means "total size unknown"
+        * and is explcitly permitted; users should take this into
+        * account before calculating @c completed/total.
+        */
+       unsigned long total;
+};
+
+extern int job_progress ( struct interface *intf,
+                         struct job_progress *progress );
+#define job_progress_TYPE( object_type ) \
+       typeof ( int ( object_type, struct job_progress *progress ) )
+
+#endif /* _IPXE_JOB_H */