Retrieves the stream-specific characteristics of a local device.
DWORD swiGetLocalStreamInfo ( SWIHD swihd, SWI_LOCALSTREAM_ARGS *args, void *buffer, unsigned size)
Argument |
Description |
swihd |
|
args |
Pointer to a SWI_LOCALSTREAM_ARGS structure for the configuration information about a device on a specific stream on the local bus: typedef struct Refer to the Details section for a description of these fields. |
buffer |
Pointer to a buffer to receive stream-specific information maintained by the device driver. |
size |
Size of the buffer in bytes. |
Return value |
Description |
SUCCESS |
|
CTAERR_DRIVER_ERROR |
Underlying driver retrieved an unrecognized error. Call swiGetLastError to retrieve the MVIP device error code. |
CTAERR_FUNCTION_NOT_AVAIL |
Underlying driver does not support the configuration of stream-specific characteristics of a local device. |
CTAERR_INVALID_HANDLE |
swihd is not a valid switch handle. |
CTAERR_SVR_COMM |
Communication error in the server environment. |
swiGetLocalStreamInfo retrieves stream-specific characteristics of a local device. The configuration information returned is vendor-specific and device-specific.
CG boards do not support swiGetLocalStreamInfo.
The SWI_LOCALSTREAM_ARGS structure contains the following fields:
Field |
Description |
---|---|
localstream |
Stream to be queried on the local bus. |
deviceid |
Device type on the local stream. The deviceid is hardware dependent. Acceptable values are: MVIP95_T1_TRUNK_DEVICE MVIP95_E1_TRUNK_DEVICE MVIP95_ANALOG_LINE_DEVICE MVIP95_CONFERENCE_DEVICE
In addition to these values, the device vendor can define device identifiers specific to their products. Refer to the device-specific documentation for these values. |
parameterid |
Data item for which configuration is to be obtained. This value is vendor specific and device driver specific. The combination of the deviceid and the parameterid specify the part of the device to configure. |
Refer to Configuring boards and drivers for more information.
If CTAERR_DRIVER_ERROR is returned, call swiGetLastError to retrieve the MVIP device error code.
swiConfigLocalStream, swiConfigLocalTimeslot, swiGetBoardInfo, swiGetDriverInfo, swiGetLocalTimeslotInfo, swiGetSwitchCaps
void myPrintCarrierStatus(SWIHD swihd)
{
SWI_LOCALSTREAM_ARGS args;
struct carrier_status cs;
args.localstream = 0;
args.deviceid = MVIP95_T1_TRUNK_DEVICE;
args.parameterid = CARRIER_STATUS;
cs.trunk = 0;
swiGetLocalStreamInfo(swihd, &args, &cs, sizeof(cs));
printf("Event count: %d\n", cs.event_count);
printf("Device: %d\n", cs.device);
if (cs.red_alarm)
printf("** RED ALARM **\n");
if (cs.yellow_alarm)
printf("** YELLOW ALARM **\n");
if (cs.blue_alarm)
printf("** BLUE ALARM **\n");
switch (cs.sync)
{
case 0:
printf("Synchronized\n");
break;
case 1:
printf("Blue Alarm\n");
break;
case 2:
printf("Not Synchronized\n");
break;
case 3:
printf("Super frame not synchronized\n");
break;
}
}