## McdChannel

McdChannel — Channel class representing Telepathy channel class

## Stability Level

Unstable, unless otherwise indicated

## Synopsis

    #include <mcd-channel.h>

                        McdChannel;
    enum                McdChannelStatus;
    struct              mcd_channel_request;
    McdChannel*         mcd_channel_new                     (TpChannel *channel,
                                                             const gchar *channel_type,
                                                             guint channel_handle,
                                                             TpHandleType channel_handle_type,
                                                             gboolean outgoing,
                                                             guint requestor_serial,
                                                             const gchar *requestor_client_id);
    void                mcd_channel_set_status              (McdChannel *channel,
                                                             McdChannelStatus status);
    McdChannelStatus    mcd_channel_get_status              (McdChannel *channel);
    gboolean            mcd_channel_get_members_accepted    (McdChannel *channel);
    const gchar*        mcd_channel_get_channel_type        (McdChannel *channel);
    GQuark              mcd_channel_get_channel_type_quark  (McdChannel *channel);
    const gchar*        mcd_channel_get_object_path         (McdChannel *channel);
    guint               mcd_channel_get_handle              (McdChannel *channel);
    TpHandleType        mcd_channel_get_handle_type         (McdChannel *channel);
    gint                mcd_channel_get_flags               (McdChannel *channel);
    GPtrArray*          mcd_channel_get_members             (McdChannel *channel);
    const gchar*        mcd_channel_get_name                (McdChannel *channel);

## Object Hierarchy

      GObject
       +----McdMission
             +----McdChannel

## Properties

      "channel-handle"           guint                 : Read / Write
      "channel-handle-type"      guint                 : Read / Write
      "channel-status"           McdChannelStatus      : Read / Write
      "channel-type"             gchar*                : Read / Write
      "channel-type-quark"       guint                 : Read / Write
      "connection"               GObject*              : Read / Write / Construct Only
      "inviter-ready"            gboolean              : Read
      "name-ready"               gboolean              : Read
      "outgoing"                 gboolean              : Read / Write / Construct Only
      "requestor-client-id"      gchar*                : Read / Write
      "requestor-serial"         guint                 : Read / Write
      "self-handle-ready"        gboolean              : Read
      "tp-channel"               TpChannel*            : Read / Write

## Signals

      "members-accepted"                               : Run First
      "status-changed"                                 : Run First

## Description

FIXME

## Details

### McdChannel

    typedef struct _McdChannel McdChannel;

### enum McdChannelStatus

    typedef enum
    {
        MCD_CHANNEL_PENDING,     /* Telepathy channel is not yet created */
        MCD_CHANNEL_DISPATCHING, /* Telepathy channel is created and waiting dispatch */
        MCD_CHANNEL_DISPATCHED,  /* Channel has been dispatched to handler */
        MCD_CHANNEL_FAILED,      /* Channel could not be dispached to handler, dying */

    } McdChannelStatus;

### struct mcd_channel_request

    struct mcd_channel_request;

### mcd_channel_new ()

    McdChannel*         mcd_channel_new                     (TpChannel *channel,
                                                             const gchar *channel_type,
                                                             guint channel_handle,
                                                             TpHandleType channel_handle_type,
                                                             gboolean outgoing,
                                                             guint requestor_serial,
                                                             const gchar *requestor_client_id);

`channel` : |
`channel_type` : |
`channel_handle` : |
`channel_handle_type` : |
`outgoing` : |
`requestor_serial` : |
`requestor_client_id` : |
Returns : |

### mcd_channel_set_status ()

    void                mcd_channel_set_status              (McdChannel *channel,
                                                             McdChannelStatus status);

`channel` : |
`status` : |

### mcd_channel_get_status ()

    McdChannelStatus    mcd_channel_get_status              (McdChannel *channel);

`channel` : |
Returns : |

### mcd_channel_get_members_accepted ()

    gboolean            mcd_channel_get_members_accepted    (McdChannel *channel);

`channel` : |
Returns : |

### mcd_channel_get_channel_type ()

    const gchar*        mcd_channel_get_channel_type        (McdChannel *channel);

`channel` : |
Returns : |

### mcd_channel_get_channel_type_quark ()

    GQuark              mcd_channel_get_channel_type_quark  (McdChannel *channel);

`channel` : |
Returns : |

### mcd_channel_get_object_path ()

    const gchar*        mcd_channel_get_object_path         (McdChannel *channel);

`channel` : |
Returns : |

### mcd_channel_get_handle ()

    guint               mcd_channel_get_handle              (McdChannel *channel);

`channel` : |
Returns : |

### mcd_channel_get_handle_type ()

    TpHandleType        mcd_channel_get_handle_type         (McdChannel *channel);

`channel` : |
Returns : |

### mcd_channel_get_flags ()

    gint                mcd_channel_get_flags               (McdChannel *channel);

`channel` : |
Returns : |

### mcd_channel_get_members ()

    GPtrArray*          mcd_channel_get_members             (McdChannel *channel);

`channel` : |
Returns : |

### mcd_channel_get_name ()

    const gchar*        mcd_channel_get_name                (McdChannel *channel);

Get the Telepathy name of `channel` (calls InspectHandles on the channel handle).

`channel` : | the McdChannel.
Returns : | a const string holding the channel name.

## Property Details

### The `"channel-handle"` property

      "channel-handle"           guint                 : Read / Write

Telepathy channel handle.

Allowed values: <= G_MAXINT

Default value: 0

### The `"channel-handle-type"` property

      "channel-handle-type"      guint                 : Read / Write

Telepathy channel handle type.

Allowed values: <= G_MAXINT

Default value: 0

### The `"channel-status"` property

      "channel-status"           McdChannelStatus      : Read / Write

Channel status that indicates the state of channel.

Default value: MCD_CHANNEL_PENDING

### The `"channel-type"` property

      "channel-type"             gchar*                : Read / Write

Telepathy channel type.

Default value: NULL

### The `"channel-type-quark"` property

      "channel-type-quark"       guint                 : Read / Write

Telepathy channel type in quark form.

Allowed values: <= G_MAXINT

Default value: 0

### The `"connection"` property

      "connection"               GObject*              : Read / Write / Construct Only

McdConnection Object from which this channel was created.

### The `"inviter-ready"` property

      "inviter-ready"            gboolean              : Read

Inviter ready.

Default value: FALSE

### The `"name-ready"` property

      "name-ready"               gboolean              : Read

Name ready.

Default value: FALSE

### The `"outgoing"` property

      "outgoing"                 gboolean              : Read / Write / Construct Only

True if the channel was requested by us.

Default value: FALSE

### The `"requestor-client-id"` property

      "requestor-client-id"      gchar*                : Read / Write

Requestor client id.

Default value: NULL

### The `"requestor-serial"` property

      "requestor-serial"         guint                 : Read / Write

Requestor serial number.

Allowed values: <= G_MAXINT

Default value: 0

### The `"self-handle-ready"` property

      "self-handle-ready"        gboolean              : Read

Self handle ready.

Default value: FALSE

### The `"tp-channel"` property

      "tp-channel"               TpChannel*            : Read / Write

Telepathy Channel Object wrapped by it.

## Signal Details

### The `"members-accepted"` signal

    void                user_function                      (McdChannel *mcdchannel,
                                                            gpointer    user_data)       : Run First

`mcdchannel` : | the object which received the signal.
`user_data` : | user data set when the signal handler was connected.

### The `"status-changed"` signal

    void                user_function                      (McdChannel *mcdchannel,
                                                            gint        arg1,
                                                            gpointer    user_data)       : Run First

`mcdchannel` : | the object which received the signal.
`arg1` : |
`user_data` : | user data set when the signal handler was connected.