XDF_SEEK(3)

NAME
xdf_seek - move the sample pointer of a xDF file

SYNOPSIS

#include <xdfio.h>

off_t xdf_seek(struct xdf* xdf, off_t offset, int whence);

DESCRIPTION

xdf_seek() repositions the current sample pointer according to the couple (offset,whence) where whence can be:

SEEK_SET
    The offset is set to offset bytes.

SEEK_CUR
    The offset is set to its current location plus offset bytes.

SEEK_END
    The offset is set to the size of the file plus offset bytes.

The file referenced by xdf should have been opened with mode XDF_READ and xdf_prepare_arrays(3) should have been successfully called on it.

RETURN VALUE

Upon successful completion, xdf_seek() returns the resulting offset location as measured in number of samples from the beginning of the recording. Otherwise, a value of -1 is returned and errno is set to indicate the error.

ERRORS

EINVAL
    xdf is NULL or whence is none of the allowed values.

EPERM
    No successfull call to xdf_prepare_transfer(3) have been done on xdf or it has been opened using the mode XDF_WRITE.

ERANGE
    The requested offset is out of the range of the recording.

EINTR
    The call was interrupted by a signal before any data was read; see signal(7).

EIO A low-level I/O error occurred while reading from the inode.

ESTALE
    Stale file handle. This error can occur for NFS and for other file systems

SEE ALSO
xdf_define_arrays(3), xdf_prepare_transfer(3)