Home · All Namespaces · All Classes · Grouped Classes · Modules · Functions codeless banner

QGsm0710Multiplexer Class Reference
[QtBaseModule]

The QGsm0710Multiplexer class provides a multiplexing implementation based on 3GPP TS 07.10/27.010 More...

    #include <QGsm0710Multiplexer>

Inherits QSerialIODeviceMultiplexer.

Inherited by QGsm0710MultiplexerServer.

Public Functions

Static Public Members

Protected Functions

Additional Inherited Members


Detailed Description

The QGsm0710Multiplexer class provides a multiplexing implementation based on 3GPP TS 07.10/27.010

This is the default multiplexer implementation that is tried if a multiplexer plug-in override is not available.

By default, this class uses the 3GPP TS 07.10/27.010 basic multiplexing mode, with a frame size of 31 bytes. The mode and/or frame size can be modified by writing a multiplexer plug-in. See the Tutorial: Writing a Multiplexer Plug-in for more information on how to write a multiplexer plug-in that modifies the 3GPP TS 07.10/27.010 parameters.

See also QSerialIODeviceMultiplexer, QMultiPortMultiplexer, and QSerialIODeviceMultiplexerPlugin.


Member Function Documentation

QGsm0710Multiplexer::QGsm0710Multiplexer ( QSerialIODevice * device, int frameSize = 31, bool advanced = false, QObject * parent = 0 )

Construct a new GSM 07.10 multiplexer around device and attach it to parent. The size of frames is frameSize. If advanced is true, then use the Advanced multiplexing option; otherwise use the Basic multiplexing option.

Ownership of device will pass to this object; it will be deleted when this object is deleted.

QGsm0710Multiplexer::~QGsm0710Multiplexer ()

Destruct this GSM 07.10 multiplexer, closing the session.

int QGsm0710Multiplexer::channelNumber ( const QString & name ) const   [virtual protected]

Returns the GSM 07.10 channel number associated with the channel name. Returns -1 if the channel name is not recognized. The default channel assignment is as follows:

NameNumber
primary1
secondary2
data3
datasetup3
aux*4

This assignment causes data call setup commands to be sent on the data channel. If a modem needs data call setup on the primary AT command channel, then it should override this method and return 1 for datasetup.

The current implementation is limited to channel numbers between 1 and 63. Numbers outside this range should not be returned.

See also channel().

bool QGsm0710Multiplexer::cmuxChat ( QSerialIODevice * device, int frameSize = 31, bool advanced = false )   [static]

Construct a AT+CMUX command with the specified parameters and send it to device. Returns true if the command succeeded, or false if the command failed. This is typically called by plug-ins that use GSM 07.10 with a different frame size or operating mode.

The size of frames is frameSize. If advanced is true, then use the Advanced multiplexing option; otherwise use the Basic multiplexing option. The baud rate is acquired from device, and the subset is always set to zero.

This is a convenience function for the most common options that are passed to AT+CMUX. If more involved options are required (e.g. subset or timeout values), then the plug-in should call QSerialIODeviceMultiplexer::chat() instead.

See also QSerialIODeviceMultiplexer::chat().

void QGsm0710Multiplexer::reinit ()   [protected]

Re-initialize the multiplexing session. This is called by subclasses that have detected that the modem has dropped out of multiplexing mode.


Copyright © 2009 Trolltech Trademarks
Qt Extended 4.4.3