]> git.draconx.ca Git - liblbx.git/blobdiff - src/lbx.h
Rename LBXIMG to LBX_IMG.
[liblbx.git] / src / lbx.h
index 1911cd759012f3ebeb835510a597d75fd16a2051..a2ca456f949eb72dbaa81dc5c00d4d173bf6287c 100644 (file)
--- a/src/lbx.h
+++ b/src/lbx.h
@@ -1,25 +1,38 @@
 #ifndef LBX_H_
 #define LBX_H_
 
-#include <stddef.h>
+#include <stdio.h>
 
 /* Errors */
 enum {
        LBX_ESUCCESS,
        LBX_EMAGIC,
        LBX_EEOF,
+       LBX_ERANGE,
+       LBX_EFORMAT,
 };
 extern int lbx_errno;
 
 /* Opaque */
 typedef struct lbx_state LBX;
 
-/* File operations */
+struct lbx_statbuf {
+       const char *name;
+       size_t size;
+};
+
+/* Archive operations */
 LBX   *lbx_fopen(FILE *, const char *);
+LBX   *lbx_mopen(void *, size_t, const char *);
 LBX   *lbx_open(const char *);
 void   lbx_close(LBX *);
 size_t lbx_numfiles(LBX *);
 
+/* File operations */
+int    lbx_stat(LBX *, size_t, struct lbx_statbuf *);
+size_t lbx_extract(LBX *, size_t, FILE *);
+void  *lbx_mmap(LBX *, size_t, size_t *);
+
 /* Misc operations */
 const char *lbx_strerror(void);