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)