aliguori | 39b65c2 | 2008-10-13 03:10:22 +0000 | [diff] [blame] | 1 | /* |
| 2 | * QEMU buffered QEMUFile |
| 3 | * |
| 4 | * Copyright IBM, Corp. 2008 |
| 5 | * |
| 6 | * Authors: |
| 7 | * Anthony Liguori <aliguori@us.ibm.com> |
| 8 | * |
| 9 | * This work is licensed under the terms of the GNU GPL, version 2. See |
| 10 | * the COPYING file in the top-level directory. |
| 11 | * |
| 12 | */ |
| 13 | |
| 14 | #ifndef QEMU_BUFFERED_FILE_H |
| 15 | #define QEMU_BUFFERED_FILE_H |
| 16 | |
| 17 | #include "hw/hw.h" |
| 18 | |
| 19 | typedef ssize_t (BufferedPutFunc)(void *opaque, const void *data, size_t size); |
| 20 | typedef void (BufferedPutReadyFunc)(void *opaque); |
| 21 | typedef void (BufferedWaitForUnfreezeFunc)(void *opaque); |
| 22 | typedef int (BufferedCloseFunc)(void *opaque); |
| 23 | |
| 24 | QEMUFile *qemu_fopen_ops_buffered(void *opaque, size_t xfer_limit, |
| 25 | BufferedPutFunc *put_buffer, |
| 26 | BufferedPutReadyFunc *put_ready, |
| 27 | BufferedWaitForUnfreezeFunc *wait_for_unfreeze, |
| 28 | BufferedCloseFunc *close); |
| 29 | |
| 30 | #endif |