1 /* SPDX-License-Identifier: GPL-2.0+ OR Apache-2.0 */ 2 #ifndef __EROFS_DISKBUF_H 3 #define __EROFS_DISKBUF_H 4 5 #ifdef __cplusplus 6 extern "C" 7 { 8 #endif 9 10 #include "erofs/defs.h" 11 12 struct erofs_diskbuf { 13 void *sp; /* internal stream pointer */ 14 u64 offset; /* internal offset */ 15 }; 16 17 int erofs_diskbuf_getfd(struct erofs_diskbuf *db, u64 *off); 18 19 int erofs_diskbuf_reserve(struct erofs_diskbuf *db, int sid, u64 *off); 20 void erofs_diskbuf_commit(struct erofs_diskbuf *db, u64 len); 21 void erofs_diskbuf_close(struct erofs_diskbuf *db); 22 23 int erofs_diskbuf_init(unsigned int nstrms); 24 void erofs_diskbuf_exit(void); 25 26 #ifdef __cplusplus 27 } 28 #endif 29 30 #endif 31