User`s guide

Dialogic
®
System Release 6.0 PCI for Windows
®
Release Update, Rev 62 — January 30, 2008 133
Dialogic Corporation
The following code example shows how to dynamically configure a T1 trunk to operate
with the 4ESS protocol.
static int MAX_PROTOCOL_LEN=20;
GC_PARM_BLKP ParmBlkp = NULL;
long id;
char protocol_name[]="4ESS";
gc_util_insert_parm_ref(&ParmBlkp, GCSET_PROTOCOL, GCPARM_PROTOCOL_NAME,
strlen(protocol_name)+1, protocol_name);
gc_SetConfigData(GCTGT_CCLIB_NETIF, bdev, ParmBlkp, 0, GCUPDATE_IMMEDIATE, &id, EV_ASYNC);
gc_util_delete_parm_blk(ParmBlkp);
if (sr_waitevt(-1) >= 0)
{
METAEVENT meta;
gc_GetMetaEvent(&meta);
switch(sr_getevttype())
{
case GCEV_SETCONFIGDATA:
printf("Received event GCEV_SETCONFIGDATA(ReqID=%d) on device %s
\n",((GC_RTCM_EVTDATA *)(meta.evtdatap))->request_ID,
ATDV_NAMEP(sr_getevtdev()));
break;
case GCEV_SETCONFIGDATA_FAIL:
printf("Received event GCEV_SETCONFIGDATA_FAIL(ReqID=%d) on device
%s, Error=%s\n",((GC_RTCM_EVTDATA *)(meta.evtdatap))->request_ID,
ATDV_NAMEP(sr_getevtdev()),
((GC_RTCM_EVTDATA *)(meta.evtdatap))->additional_msg);
break;
default:
printf("Received event 0x%x on device %s\n", sr_getevttype(),
ATDV_NAMEP(sr_getevtdev()));
break;
}
}
1.42.2 Extended and New Data Structures
Extension of GC_RTCM_EVTDATA
Two new data fields (target_type and target_id) are appended to the
GC_RTCM_EVTDATA data structure defined in the gclib.h file. The GC_RTCM_EVTDATA
structure is generally associated with Global Call RTCM events (namely,
GCEV_SETCONFIGDATA, GCEV_SETCONFIGDATA_FAIL, GCEV_GETCONFIGDATA,
and GCEV_GETCONFIGDATA_FAIL).
The following shows the extended GC_RTCM_EVTDATA data structure with the new
fields shown in bold text:
typedef struct{
long request_ID; /* The RTCM request ID */
int gc_result; /* GC result value for this event */
int cclib_result; /* CCLib result value for this event */
int cclib_ID; /* CCLib ID for the result */
char * additional_msg; /* Additional message for this event */
GC_PARM_BLKP retrieved_parmblkp; /* Retrieved GC_PARM_BLK -- */