In addition to the NASD common API previously described, NASD clients
have their own set of interfaces. These interfaces are largely concerned
with client/drive communication. Users of the client API should
include the file <nasd/nasd_pdrive_client.h>
and link against libnasd_drive_client.a
as well
as libnasd_common.a
.
Before any client operations may take place, the client module must
be initialized with nasd_cl_p_init()
, which takes no
arguments and returns nasd_status_t
. This module is
deinitialized with nasd_cl_p_shutdown()
, which takes
no arguments and returns void
.
Philosophically, the client API exists to abstract the actual mechanism
of communicating with drives. Clients operate on drives by creating
drive handles, and then passing these
handles to specific functions. The majority of the client API is
wrappers around various drive operations. The client API is thread-safe.
![]() | ![]() | ![]() |
---|---|---|
Other system wrappers | Drive handles | NASD Programmer's Documentation |