| Home · All Classes · All Namespaces · Modules · Functions · Files

Signals | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions
Tp::TubeChannel Class Reference
Channel proxies

The TubeChannel class is a base class for all tube types. More...

`#include <TelepathyQt/TubeChannel>`

Inherits Tp::Channel.

Inherited by Tp::StreamTubeChannel.

List of all members.

## Signals

- void stateChanged (Tp::TubeChannelState state)

## Public Member Functions

- virtual ~TubeChannel ()
- TubeChannelState state () const
- QVariantMap parameters () const

## Static Public Member Functions

- static TubeChannelPtr create (const ConnectionPtr &connection, const QString &objectPath, const QVariantMap &immutableProperties)

## Static Public Attributes

- static const Feature FeatureCore

## Protected Member Functions

- TubeChannel (const ConnectionPtr &connection, const QString &objectPath, const QVariantMap &immutableProperties, const Feature &coreFeature=TubeChannel::FeatureCore)
- void setParameters (const QVariantMap &parameters)

## Detailed Description

The TubeChannel class is a base class for all tube types.

A tube is a mechanism for arbitrary data transfer between two or more IM users, used to allow applications on the users' systems to communicate without having to establish network connections themselves.

Note that TubeChannel should never be instantiated directly, instead one of its subclasses (e.g. IncomingStreamTubeChannel or OutgoingStreamTubeChannel) should be used.

See Asynchronous Object Model, Shared Pointer Usage

## Constructor & Destructor Documentation

Tp::TubeChannel::~TubeChannel | ( |  | ) | `[virtual]`

Class destructor.

Tp::TubeChannel::TubeChannel | ( | const ConnectionPtr & | connection,
|  | const QString & | objectPath,
|  | const QVariantMap & | immutableProperties,
|  | const Feature & | coreFeature = `TubeChannel::FeatureCore`
| ) |  | `[protected]`

Construct a new TubeChannel object.

Parameters:

  connection | Connection owning this channel, and specifying the service.
  objectPath | The channel object path.
  immutableProperties | The channel immutable properties.
  coreFeature | The core feature of the channel type, if any. The corresponding introspectable should depend on TubeChannel::FeatureCore.

## Member Function Documentation

TubeChannelPtr Tp::TubeChannel::create | ( | const ConnectionPtr & | connection,
|  | const QString & | objectPath,
|  | const QVariantMap & | immutableProperties
| ) |  | `[static]`

Create a new TubeChannel channel.

Parameters:

  connection | Connection owning this channel, and specifying the service.
  objectPath | The channel object path.
  immutableProperties | The channel immutable properties.

Returns:
  A TubeChannelPtr object pointing to the newly created TubeChannel object.

Reimplemented from Tp::Channel.

Reimplemented in Tp::IncomingStreamTubeChannel, Tp::OutgoingStreamTubeChannel, and Tp::StreamTubeChannel.

TubeChannelState Tp::TubeChannel::state | ( |  | ) | const

Return the state of this tube.

Change notification is via the stateChanged() signal.

This method requires TubeChannel::FeatureCore to be ready.

Returns:
  The state as TubeChannelState.

See also:
  stateChanged()

QVariantMap Tp::TubeChannel::parameters | ( |  | ) | const

Return the parameters associated with this tube, if any.

The parameters are populated when an outgoing tube is offered, but they are most useful in the receiving end, where the parameters passed to the offer can be extracted for the tube's entire lifetime to bootstrap legacy protocols. All parameters are passed unchanged.

This method requires TubeChannel::FeatureCore to be ready.

Returns:
  The parameters as QVariantMap.

void Tp::TubeChannel::stateChanged | ( | Tp::TubeChannelState | state | ) | `[signal]`

Emitted when the value of state() changes.

See also:
  state The new state of this tube.

void Tp::TubeChannel::setParameters | ( | const QVariantMap & | parameters | ) | `[protected]`

## Member Data Documentation

const Feature Tp::TubeChannel::FeatureCore`[static]`

Feature representing the core that needs to become ready to make the TubeChannel object usable.

Note that this feature must be enabled in order to use most TubeChannel methods. See specific methods documentation for more details.

Reimplemented from Tp::Channel.

Reimplemented in Tp::IncomingStreamTubeChannel, Tp::OutgoingStreamTubeChannel, and Tp::StreamTubeChannel.