MX Foundation 4
Channel Class

Accessing a physical ARINC 717 channel requires a handle to the channel.

A channel handle is a reference to a channel holding a physical resource (port). The channel handle is the first argument to be passed to many MXF channel oriented functions.

To get the handle to an ARINC 717 physical port regardless of the installed devices, use the mxfModuleChannelGet() function by specifying the physical port index.

The mxfModuleChannelAllGet() function with the chnClass argument MXF_CLASS_A717 can also be used.

If MXF_DEVICE_ALL is specified with the mxfSystemDeviceAllGet() function, all handles of detected devices are returned.

{
HMXF_SERVER server=0;
HMXF_DEVICE device;
HMXF_MODULE module;
HMXF_CHANNEL rx[4];
uint32 rc;
uint64 deviceCount=0;
uint64 moduleCount=0;
uint64 channelCount=0;
uint64 device = MXF_DEVICE_ALL; // All devices
uint64 moduleType = MXF_MODULE_MULTI_EH; // Multi-protocol module
uint64 chnClass = MXF_CLASS_A717; // A717 channel class
uint64 subClass = MXF_SCLASS_RX_CHANNEL; // RX channel
// Connects to the local server
rc = mxfServerConnect("0.0.0.0", "", "", FALSE, &server);
if (rc)
{
printf("Error connection 0x%08lx", rc);
return rc;
}
// Inits MXF library
rc = mxfSystemInit(server);
if (!rc)
{
// Gets the device handle
rc = mxfSystemDeviceAllGet(server, device, 1, &deviceCount, &device);
if (!rc && deviceCount)
{
// Getsthe module handle
rc = mxfDeviceModuleAllGet(device, moduleType, 1, &moduleCount, &module);
// Gets the channel handle
if (!rc && moduleCount)
rc = mxfModuleChannelAllGet(module, chnClass, subClass, 4, &channelCount, rx);
}
}
}


Changing channel class

On the MULTI ENHANCED module, an ARINC 717 channel can be configured on another channel class by default. To configure a channel to ARINC 717, an initialization callback set with the mxfSystemInitAttributeUint64CallbackHandler() function must be used. It is a good programming practice to avoid relying on the default channel class value (or any other attributes for that matter) and set it to the desired value.

Updated 10/23/2023