SwfdecBuffer

SwfdecBuffer —

Synopsis




            SwfdecBuffer;
            SwfdecBufferQueue;
SwfdecBuffer* swfdec_buffer_new             (void);
SwfdecBuffer* swfdec_buffer_new_and_alloc   (unsigned int size);
SwfdecBuffer* swfdec_buffer_new_and_alloc0  (unsigned int size);
SwfdecBuffer* swfdec_buffer_new_with_data   (void *data,
                                             int size);
SwfdecBuffer* swfdec_buffer_new_subbuffer   (SwfdecBuffer *buffer,
                                             unsigned int offset,
                                             unsigned int length);
SwfdecBuffer* swfdec_buffer_new_from_file   (const char *filename,
                                             GError **error);
SwfdecBuffer* swfdec_buffer_ref             (SwfdecBuffer *buffer);
void        swfdec_buffer_unref             (SwfdecBuffer *buffer);
SwfdecBufferQueue* swfdec_buffer_queue_new  (void);
void        swfdec_buffer_queue_clear       (SwfdecBufferQueue *queue);
void        swfdec_buffer_queue_free        (SwfdecBufferQueue *queue);
int         swfdec_buffer_queue_get_depth   (SwfdecBufferQueue *queue);
int         swfdec_buffer_queue_get_offset  (SwfdecBufferQueue *queue);
void        swfdec_buffer_queue_push        (SwfdecBufferQueue *queue,
                                             SwfdecBuffer *buffer);
SwfdecBuffer* swfdec_buffer_queue_pull      (SwfdecBufferQueue *queue,
                                             unsigned int length);
SwfdecBuffer* swfdec_buffer_queue_pull_buffer
                                            (SwfdecBufferQueue *queue);
SwfdecBuffer* swfdec_buffer_queue_peek      (SwfdecBufferQueue *queue,
                                             unsigned int length);

Description

Details

SwfdecBuffer

typedef struct {
  unsigned char *data;
  unsigned int length;

  int ref_count;

  SwfdecBuffer *parent;

  void (*free) (SwfdecBuffer *, void *);
  void *priv;
} SwfdecBuffer;


SwfdecBufferQueue

typedef struct {
  GList *buffers;
  unsigned int depth;
  unsigned int offset;
} SwfdecBufferQueue;


swfdec_buffer_new ()

SwfdecBuffer* swfdec_buffer_new             (void);

Returns :

swfdec_buffer_new_and_alloc ()

SwfdecBuffer* swfdec_buffer_new_and_alloc   (unsigned int size);

size :
Returns :

swfdec_buffer_new_and_alloc0 ()

SwfdecBuffer* swfdec_buffer_new_and_alloc0  (unsigned int size);

size :
Returns :

swfdec_buffer_new_with_data ()

SwfdecBuffer* swfdec_buffer_new_with_data   (void *data,
                                             int size);

data :
size :
Returns :

swfdec_buffer_new_subbuffer ()

SwfdecBuffer* swfdec_buffer_new_subbuffer   (SwfdecBuffer *buffer,
                                             unsigned int offset,
                                             unsigned int length);

buffer :
offset :
length :
Returns :

swfdec_buffer_new_from_file ()

SwfdecBuffer* swfdec_buffer_new_from_file   (const char *filename,
                                             GError **error);

filename :
error :
Returns :

swfdec_buffer_ref ()

SwfdecBuffer* swfdec_buffer_ref             (SwfdecBuffer *buffer);

buffer :
Returns :

swfdec_buffer_unref ()

void        swfdec_buffer_unref             (SwfdecBuffer *buffer);

buffer :

swfdec_buffer_queue_new ()

SwfdecBufferQueue* swfdec_buffer_queue_new  (void);

Returns :

swfdec_buffer_queue_clear ()

void        swfdec_buffer_queue_clear       (SwfdecBufferQueue *queue);

queue :

swfdec_buffer_queue_free ()

void        swfdec_buffer_queue_free        (SwfdecBufferQueue *queue);

queue :

swfdec_buffer_queue_get_depth ()

int         swfdec_buffer_queue_get_depth   (SwfdecBufferQueue *queue);

queue :
Returns :

swfdec_buffer_queue_get_offset ()

int         swfdec_buffer_queue_get_offset  (SwfdecBufferQueue *queue);

queue :
Returns :

swfdec_buffer_queue_push ()

void        swfdec_buffer_queue_push        (SwfdecBufferQueue *queue,
                                             SwfdecBuffer *buffer);

queue :
buffer :

swfdec_buffer_queue_pull ()

SwfdecBuffer* swfdec_buffer_queue_pull      (SwfdecBufferQueue *queue,
                                             unsigned int length);

queue :
length :
Returns :

swfdec_buffer_queue_pull_buffer ()

SwfdecBuffer* swfdec_buffer_queue_pull_buffer
                                            (SwfdecBufferQueue *queue);

queue :
Returns :

swfdec_buffer_queue_peek ()

SwfdecBuffer* swfdec_buffer_queue_peek      (SwfdecBufferQueue *queue,
                                             unsigned int length);

Creates a new buffer with the first length bytes from queue, but unlike swfdec_buffer_queue_pull(), does not remove them from queue.

queue : a SwfdecBufferQueue to read from
length : amount of bytes to peek
Returns : NULL if the requested amount of data wasn't available or a new readonly SwfdecBuffer. Use swfdec_buffer_unref() after use.