src/segcol.c File Reference

Segment Collection implementation. More...

#include <stdlib.h>
#include <errno.h>
#include "segcol.h"
#include "segcol_internal.h"
#include "type_limits.h"
#include "debug.h"
Include dependency graph for segcol.c:

Go to the source code of this file.

Functions

int segcol_create_impl (segcol_t **segcol, void *impl, struct segcol_funcs *funcs)
 Creates a segcol_t using a specific implementation.
void * segcol_get_impl (segcol_t *segcol)
 Gets the implementation of a segcol_t.
void * segcol_iter_get_impl (segcol_iter_t *iter)
 Gets the implementation of a segcol_t.
int segcol_free (segcol_t *segcol)
 Frees the resources of a segcol_t.
int segcol_append (segcol_t *segcol, segment_t *seg)
 Appends a segment to the segcol_t.
int segcol_insert (segcol_t *segcol, off_t offset, segment_t *seg)
 Inserts a segment into the segcol_t.
int segcol_delete (segcol_t *segcol, segcol_t **deleted, off_t offset, off_t length)
 Deletes a logical range from the segcol_t.
int segcol_find (segcol_t *segcol, segcol_iter_t **iter, off_t offset)
 Finds the segment that contains a given logical offset.
int segcol_iter_new (segcol_t *segcol, segcol_iter_t **iter)
 Gets a new (forward) iterator for a segcol_t.
int segcol_iter_next (segcol_iter_t *iter)
 Moves the segcol_iter_t to the next element.
int segcol_iter_is_valid (segcol_iter_t *iter, int *valid)
 Whether the iter points to a valid element.
int segcol_iter_get_segment (segcol_iter_t *iter, segment_t **seg)
 Gets the segment pointed to by a segcol_iter_t.
int segcol_iter_get_mapping (segcol_iter_t *iter, off_t *mapping)
 Gets the mapping (logical offset) of the segment pointed to by a segcol_iter_t.
int segcol_iter_free (segcol_iter_t *iter)
 Frees a segcol_iter_t.
int segcol_get_size (segcol_t *segcol, off_t *size)
 Gets the size of the data contained in a segcol_t.

Detailed Description

Segment Collection implementation.

Definition in file segcol.c.


Generated on Sun Nov 15 15:27:49 2009 for libbls by  doxygen 1.6.1