Introduction   Client Library API Reference   IDL Interface   File List   Index  

Request Interface
[IDL Interface]

Request and stream handling. More...

Functions

int l4blk::cmd::create_stream ([in] l4blk_driver_id_t drv,[in] unsigned long device,[in] unsigned long bandwidth,[in] unsigned long period,[in] unsigned long blk_size,[in] float q,[in] unsigned long meta_int,[out] l4blk_stream_t *stream)
 Create new real-time stream.
int l4blk::cmd::close_stream ([in] l4blk_driver_id_t drv,[in] l4blk_stream_t stream)
 Close real-time stream.
int l4blk::cmd::start_stream ([in] l4blk_driver_id_t drv,[in] l4blk_stream_t stream,[in] unsigned long time,[in] unsigned long request_no)
 Set stream start time.
int l4blk::cmd::put_request ([in] l4blk_driver_id_t drv,[in] l4blk_blk_request_t request,[in, ref, size_is(sg_size), max_is(4096)] void *sg_list,[in] int sg_size,[in] int sg_num,[in] int sg_type)
 Send scatter-gather request to driver.
int l4blk::cmd::ctrl ([in] l4blk_driver_id_t drv,[in] l4_uint32_t command,[in, ref, size_is(in_size)] void *in_args,[in] int in_size,[out, ref, prealloc_client, size_is(out_size)] void **out_args,[in, out] int *out_size)
 Generic driver control function.

Detailed Description

Request and stream handling.


Function Documentation

int l4blk::cmd::create_stream ( [in] l4blk_driver_id_t  drv,
[in] unsigned long  device,
[in] unsigned long  bandwidth,
[in] unsigned long  period,
[in] unsigned long  blk_size,
[in] float  q,
[in] unsigned long  meta_int,
[out] l4blk_stream_t stream 
) [inherited]

Create new real-time stream.

Parameters:
drv Driver handle
device Device id
bandwidth Bandwidth of stream (bytes/s)
period Period length (milliseconds)
blk_size Blocksize (bytes)
q Quality parameter
meta_int Metadata request interval (number of regular requests per metadata request)
Return values:
stream Stream handle
Returns:
0 on success (created new stream, stream contains a valid stream handle), error code otherwise.

int l4blk::cmd::close_stream ( [in] l4blk_driver_id_t  drv,
[in] l4blk_stream_t  stream 
) [inherited]

Close real-time stream.

Parameters:
drv Driver handle
stream Stream handle.
Returns:
0 on succes (closed stream, released resources), error code otherwise.

int l4blk::cmd::start_stream ( [in] l4blk_driver_id_t  drv,
[in] l4blk_stream_t  stream,
[in] unsigned long  time,
[in] unsigned long  request_no 
) [inherited]

Set stream start time.

Parameters:
drv Driver handle
stream Stream handle.
time Time (deadline) of first request (milliseconds)
request_no Request number of first request
Returns:
0 on success, error code otherwise.

int l4blk::cmd::put_request ( [in] l4blk_driver_id_t  drv,
[in] l4blk_blk_request_t  request,
[in, ref, size_is(sg_size), max_is(4096)] void *  sg_list,
[in] int  sg_size,
[in] int  sg_num,
[in] int  sg_type 
) [inherited]

Send scatter-gather request to driver.

Parameters:
drv Driver handle
request Request
sg_list Buffer list
sg_size Sizr of sg_list (bytes)
sg_num Number of buffers in buffer list
sg_type Type of scatter-gather list:
Returns:
0 on success (requests enqueued into driver's request list), error code otherwise.

int l4blk::cmd::ctrl ( [in] l4blk_driver_id_t  drv,
[in] l4_uint32_t  command,
[in, ref, size_is(in_size)] void *  in_args,
[in] int  in_size,
[out, ref, prealloc_client, size_is(out_size)] void **  out_args,
[in, out] int *  out_size 
) [inherited]

Generic driver control function.

Parameters:
drv Driver handle
command Control command
in_args Input buffer
in_size Size of input buffer
out_args Output buffer
out_size Size of output buffer
Returns:
0 on success, error code otherwise.


Generic Block Interface Reference Manual, written by Lars Reuther  © 2000-2003