OSDN Git Service

tunerec: add comment
[rec10/rec10-git.git] / tunerec / tunerec.c
index 3224b35..8201f24 100755 (executable)
@@ -42,6 +42,8 @@ typedef struct {
 void * record_read(void * priv);
 void * record_write(void * priv);
 
+// TODO: switchable between VRB(virtual ring buffer) and MRB(My Ring Buffer)
+
 void mrb_init(mrb* rb, size_t size) {
        rb->rb_ptr = malloc(size);
        rb->rb_wt = rb->rb_rt = rb->rb_ab = 0;
@@ -92,12 +94,13 @@ bool mrb_get(mrb* rb, char *target, size_t size) {
                return false;
        }
        if ( rb->rb_rt + size <= rb->rb_wt ) {
-               // read bytes + newly taken bytes <= written max size
+               // read bytes + newly taken bytes <= buffer max size
                memcpy(target, rb->rb_ptr + rb->rb_rt, size);
                rb->rb_rt = rb->rb_rt + size;
        }
        else {
-               // Ring Buffer wrapped.
+               // read bytes + newly taken bytes > buffer max size
+               // wrap around.
                partial = RING_BUFFER_SIZE - rb->rb_rt;
                memcpy(target, rb->rb_ptr + rb->rb_rt, partial);
                memcpy(target + partial, rb->rb_ptr, size - partial);