DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 

udi_gio_event_cb_t(3udi)


Control block for GIO event operations

SYNOPSIS

#include <udi.h>

typedef struct {

	udi_cb_t gcb;

	udi_ubit8_t event_code;

	void *event_params;

} udi_gio_event_cb_t;
 
/* Control Block Group Number */
 
#define  UDI_GIO_EVENT_CB_NUM				3
 

MEMBERS gcb is a generic control block header, which includes a pointer to the scratch space associated with this control block. The driver may use the scratch space while it owns the control block, but the values are not guaranteed to persist across channel operations.

event_code is a driver-specific code that indicates the type of event which occured.

event_params is a pointer to additional parameters for this type of event. The structure and size of these parameters are defined by the GIO provider. The pointer itself is set by the environment when the control block is allocated, and must not be modified by the driver.

DESCRIPTION The Generic I/O event control block is used between a GIO client and a GIO provider to notify the client of an asynchronous event.

In order to use this type of control block it must be associated with a control block index by including UDI_GIO_EVENT_CB_NUM in a udi_cb_init_t in the driver's udi_init_info.

The size and layout of the event_params structure must be specified using the inline_size and inline_layout members of that udi_cb_init_t structure (i.e. event_params is a UDI_DL_INLINE_DRIVER_TYPED field).

If there are no parameters for this type of event, event_params must be NULL and inline_size must be zero.

REFERENCES udi_init_info, udi_cb_init_t, udi_cb_alloc


UDI Core Specification Contents