#include <ogg/ogg.h>
#include <vorbis/codec.h>
-typedef size_t (*vcedit_read_func)(void *, size_t, size_t, void *);
-typedef size_t (*vcedit_write_func)(const void *, size_t, size_t, void *);
+typedef enum {
+ VCEDIT_ERR_SUCCESS = 0,
+ VCEDIT_ERR_OPEN,
+ VCEDIT_ERR_INVAL,
+ VCEDIT_ERR_TMPFILE,
+ VCEDIT_ERR_REOPEN
+} vcedit_error;
typedef struct vcedit_state_St vcedit_state;
-vcedit_state *vcedit_state_new (void);
+vcedit_state *vcedit_state_new (const char *filename);
void vcedit_state_ref (vcedit_state *state);
void vcedit_state_unref (vcedit_state *state);
vorbis_comment *vcedit_comments (vcedit_state *state);
-int vcedit_open_callbacks (vcedit_state *state, void *in,
- vcedit_read_func read_func,
- vcedit_write_func write_func);
-int vcedit_write (vcedit_state *state, void *out);
-const char *vcedit_error (vcedit_state *state);
+vcedit_error vcedit_open (vcedit_state *state);
+vcedit_error vcedit_write (vcedit_state *state);
#ifdef __cplusplus
}