MMPco: libmm-glib Reference Manual

## MMPco MMPco — Helper object to handle 3GPP PCO. |

## Functions

guint32 | mm_pco_get_session_id ()
gboolean | mm_pco_is_complete ()
const guint8 * | mm_pco_get_data ()
GList * | mm_pco_list_add ()
void | mm_pco_list_free ()

## Types and Values

struct | MMPco

## Object Hierarchy

        GObject
        ╰── MMPco

## Description

The MMPco is an object handling the raw 3GPP Protocol Configuration Options (PCO) that the modem has received from the network.

This object is retrieved with `mm_modem_3gpp_get_pco()`.

## Functions

### mm_pco_get_session_id ()

    guint32
    mm_pco_get_session_id (MMPco *self);

Gets the session ID associated with the PCO.

#### Parameters

self | a MMPco. |

#### Returns

the session ID.

### mm_pco_is_complete ()

    gboolean
    mm_pco_is_complete (MMPco *self);

Gets the complete flag that indicates whether the PCO data contains the complete PCO structure received from the network.

#### Parameters

self | a MMPco. |

#### Returns

`TRUE` if the PCO data contains the complete PCO structure, `FALSE` otherwise.

### mm_pco_get_data ()

    const guint8 *
    mm_pco_get_data (MMPco *self,
                     gsize *data_size);

Gets the PCO data in raw bytes.

#### Parameters

self | a MMPco. |
data_size | Size of the PCO data, if any given. | [out]

#### Returns

the PCO data, or `NULL` if it doesn't contain any.

[transfer none]

### mm_pco_list_add ()

    GList *
    mm_pco_list_add (GList *pco_list,
                     MMPco *pco);

Adds a MMPco to a given PCO list. MMPco objects stored in the order of their session ID. An existing PCO with the same session ID is overwritten with the new value.

#### Parameters

pco_list | a GList of MMPco. | [transfer full][element-type ModemManager.Pco]
pco | a MMPco to add to the given list. | [transfer none]

#### Returns

the new start of an updated or newly allocated GList of MMPco.

[transfer full][element-type ModemManager.Pco]

### mm_pco_list_free ()

    void
    mm_pco_list_free (GList *pco_list);

Frees all of the memory used by a GList of MMPco.

#### Parameters

pco_list | a GList of MMPco. | [transfer full][element-type ModemManager.Pco]

## Types and Values

### struct MMPco

    struct MMPco;

The MMPco structure contains private data and should only be accessed using the provided API.