User Guide

5-2 Ampex 1308911-02
Model No.
Running Head
DST API Overview libdd2 API Functions
dst_rewind() Rewind tape to Beginning of Partition (BOP).
dst_setdrive() Change tape drive configuration parameters.
dst_setparam() Change tape drive data block size and tape device driver debug
level.
dst_setpos() Set tape drive position to the specified location.
dst_space() Change current position by a specified number of blocks or files, or
set current position to end of data (EOD).
dst_status() Get information on tape drive and tape cartridge.
dst_unload() Unload the tape cartridge from the tape drive.
dst_version() Get version information for the tape device driver.
dst_weof() Write filemark(s) to tape.
dst_weof_ex() Write filemark(s) to tape (extended).
5.2.2 Position Specifications
The libdd2 API permits applications to specify tape drive position in either token form or
standard C structure form. Three positioning formats are supported: DST (standard DD-2),
DST600, and DIS. Each format can be converted from token form to structure form or vica
versa. In order to obtain DIS timecode, however, a position must be retrieved from tape in
structure form and converted to a token.
The token form of a position specification is a portable byte array that is not subject to host
platform byte-ordering or alignment variations. A token position written on one host platform
can be read by a program running on a different host platform. The structure form of a position
specification may not be portable across platforms.
The libdd2 API functions use the following structures, unions, and typedefs to get, set, and
convert position.
dst_position_st
This structure type is used to get, set, or convert a position specification.
typedef struct
{
dst_pos_type_en type; /* Position type */
dst_position_un pos; /* Position */
} dst_position_st;