Prosody H.223 Mux: API: sm_h223mux_open_lc

This function is under development. It could be changed or withdrawn, and may not be implemented in this release.

Prototype Definition

int sm_h223mux_open_lc(struct sm_h223mux_open_lc_parms *open_lcp)

Parameters

*open_lcp
a structure of the following type:
typedef struct sm_h223mux_open_lc_parms {
	tSMH223muxId h223mux;					/* in */
	tSM_UT32 segmentable_flag;				/* in */
	enum kSMH223muxLogicalChannelType {
		kSMH223muxLogicalChannelTypeUnidirectional,
		kSMH223muxLogicalChannelTypeBidirectional,
	} type;							/* in */
	struct {
		tSM_INT lcn;					/* in */
		enum kSMH223muxLogicalChannelDirection {
			kSMH223muxLogicalChannelDirectionTransmit,
			kSMH223muxLogicalChannelDirectionReceive,
		} direction;					/* in */
		struct {
			enum kSMH223muxMarkUnit {
				kSMH223muxMarkUnitBytes,
				kSMH223muxMarkUnitALSDU,
			} mark_unit;
			tSM_INT hi_mark;			/* in */
			tSM_INT lo_mark;			/* in */
		} transmit_lc;					/* in */
		enum kSMH223muxAdaptationLayerType {
			kSMH223muxAdaptationLayerTypeNonStandard,
			kSMH223muxAdaptationLayerTypeAL1Framed,
			kSMH223muxAdaptationLayerTypeAL1NotFramed,
			kSMH223muxAdaptationLayerTypeAL2WithoutSequenceNumbers,
			kSMH223muxAdaptationLayerTypeAL2WithSequenceNumbers,
			kSMH223muxAdaptationLayerTypeAL3,
		} adaptation_layer_type;
		union {
			struct {
				tSM_INT control_field_octets;	/* in */
				tSM_INT send_buffer_size;	/* in */
			} al3;					/* in */
		} u_al;						/* in */
	} forward_channel;					/* in */
	struct {
		tSM_INT lcn;					/* in */
		enum kSMH223muxLogicalChannelDirection {
			kSMH223muxLogicalChannelDirectionTransmit,
			kSMH223muxLogicalChannelDirectionReceive,
		} direction;					/* in */
		struct {
			enum kSMH223muxMarkUnit {
				kSMH223muxMarkUnitBytes,
				kSMH223muxMarkUnitALSDU,
			} mark_unit;
			tSM_INT hi_mark;			/* in */
			tSM_INT lo_mark;			/* in */
		} transmit_lc;					/* in */
		enum kSMH223muxAdaptationLayerType {
			kSMH223muxAdaptationLayerTypeNonStandard,
			kSMH223muxAdaptationLayerTypeAL1Framed,
			kSMH223muxAdaptationLayerTypeAL1NotFramed,
			kSMH223muxAdaptationLayerTypeAL2WithoutSequenceNumbers,
			kSMH223muxAdaptationLayerTypeAL2WithSequenceNumbers,
			kSMH223muxAdaptationLayerTypeAL3,
		} adaptation_layer_type;
		union {
			struct {
				tSM_INT control_field_octets;	/* in */
				tSM_INT send_buffer_size;	/* in */
			} al3;					/* in */
		} u_al;						/* in */
	} reverse_channel;					/* in */
} SM_H223MUX_OPEN_LC_PARMS;

Description

This function will open a new logical channel.

Fields

h223mux (Only in Preliminary Documentation)
The mux to open the logical channel on.
segmentable_flag (Only in Preliminary Documentation)
When set to non-zero indicates that the channel is designated to be segmentable, and when equal to zero indicates that the channel is designated to be non-segmentable.
type (Only in Preliminary Documentation)
The type of logical channel to be opened.
One of these values:
kSMH223muxLogicalChannelTypeUnidirectional
Unidirectional channel.
kSMH223muxLogicalChannelTypeBidirectional
Bidirectional channel.
forward_channel (Only in Preliminary Documentation)
lcn
The logical channel number.
direction
The logical channel direction. One of these values:
kSMH223muxLogicalChannelDirectionTransmit
Logical channel is to be opened for transmission.
kSMH223muxLogicalChannelDirectionReceive
Logical channel is to be opened for receive.
transmit_lc
This structure is only valid if direction is kSMH223muxLogicalChannelDirectionTransmit.
mark_unit
One of these values:
kSMH223muxMarkUnitBytes
Unit of measurement is in bytes.
kSMH223muxMarkUnitALSDU
Unit of measurement is in AL-SDUs
hi_mark
Higher level threshold. Represents bytes or AL-SDUs depending on value of mark_unit.
lo_mark
Lower level threshold. Represents bytes or AL-SDUs depending on value of mark_unit.
adaptation_layer_type
One of these values:
kSMH223muxAdaptationLayerTypeNonStandard
Non standard. Please note that this is currently unsupported.
kSMH223muxAdaptationLayerTypeAL1Framed
AL1 framed mode.
kSMH223muxAdaptationLayerTypeAL1NotFramed
AL1 unframed mode.
kSMH223muxAdaptationLayerTypeAL2WithoutSequenceNumbers
AL2 with no sequence numbers present.
kSMH223muxAdaptationLayerTypeAL2WithSequenceNumbers
AL2 with sequence numbers present.
kSMH223muxAdaptationLayerTypeAL3
AL3 with the specified parameters. See below.
u_al
al3
This structure is only valid if adaptation_layer_type is kSMH223muxAdaptationLayerTypeAL3
control_field_octets
Number of control field octets
send_buffer_size
Size of the send buffer that will be used. The size being measured in octets.
reverse_channel (Only in Preliminary Documentation)
This structure is only valid if type is kSMH223muxLogicalChannelTypeBidirectional.
lcn
The logical channel number.
direction
The logical channel direction. One of these values:
kSMH223muxLogicalChannelDirectionTransmit
Logical channel is to be opened for transmission.
kSMH223muxLogicalChannelDirectionReceive
Logical channel is to be opened for receive.
transmit_lc
This structure is only valid if direction is kSMH223muxLogicalChannelDirectionTransmit.
mark_unit
One of these values:
kSMH223muxMarkUnitBytes
Unit of measurement is in bytes.
kSMH223muxMarkUnitALSDU
Unit of measurement is in AL-SDUs
hi_mark
Higher level threshold. Represents bytes or AL-SDUs depending on value of mark_unit.
lo_mark
Lower level threshold. Represents bytes or AL-SDUs depending on value of mark_unit.
adaptation_layer_type
One of these values:
kSMH223muxAdaptationLayerTypeNonStandard
Non standard. Please note that this is currently unsupported.
kSMH223muxAdaptationLayerTypeAL1Framed
AL1 framed mode.
kSMH223muxAdaptationLayerTypeAL1NotFramed
AL1 unframed mode.
kSMH223muxAdaptationLayerTypeAL2WithoutSequenceNumbers
AL2 with no sequence numbers present.
kSMH223muxAdaptationLayerTypeAL2WithSequenceNumbers
AL2 with sequence numbers present.
kSMH223muxAdaptationLayerTypeAL3
AL3 with the specified parameters. See below.
u_al
al3
This structure is only valid if adaptation_layer_type is kSMH223muxAdaptationLayerTypeAL3
control_field_octets
Number of control field octets
send_buffer_size
Size of the send buffer that will be used. The size being measured in octets.

Returns

0 if call completed successfully, otherwise a standard error such as:


This function is part of the Prosody H.223 Mux API.