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

RELATED TO xdf_seek…