projects
/
ruby-vorbistagger.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Reworked error handling.
[ruby-vorbistagger.git]
/
ext
/
vcedit.h
diff --git
a/ext/vcedit.h
b/ext/vcedit.h
index a8aa33c17575c31e16dbc270af542476d1483f96..c0f15dccb9a64f1b12bbd91112d0678e311e74e5 100644
(file)
--- a/
ext/vcedit.h
+++ b/
ext/vcedit.h
@@
-27,20
+27,22
@@
extern "C" {
#include <ogg/ogg.h>
#include <vorbis/codec.h>
#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;
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);
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
}
#ifdef __cplusplus
}