This page applies to Harlequin v13.1r0 and later; and to Harlequin Core but not Harlequin MultiRIP
int32 seek_file ( DEVICELIST *dev, DEVICE_FILEDESCRIPTOR descriptor, Hq32x2 *destn; int32 flags );
Some devices will be able to support positionable files that is, there is a current file position associated with the open file and the next read or write will read from, or write to, bytes at that point, and this current file position can be set.
This routine should return TRUE if the current file position was successfully set, or FALSE
if it failed. If it fails, last_error should return DeviceIOError .
The flags parameter indicates how the destn parameter should be interpreted. If flags is SW_SET (the constants for flags are defined in the file swdevice.h ), the current file position should be set to destn bytes from the start of the file. If flags is SW_INCR , the current file position should be changed by destn bytes, and if flags is SW_XTND, the current file position should be set to the length of the file plus destn . If this results in the current file position being beyond the current end of the file, the file is open for writing, and the file permissions allow it to be extended, then file should be extended to the current file position. [RB3] does not specify the values in any bytes between the old and new lengths of the file.
Calls to seek_file with a value of zero passed in the destn argument have special meanings. The meaning of such a call depends on the value of the flags argument. Even if a device cannot support seeking, it is usually possible to implement support for some or all of these special calls. The meanings of calls to seek_file when destn is zero are defined below.
|
|
The RIP passes this |
|
|
The RIP passes this |
|
|
The RIP passes this |