## DPM Open Port request DPM Open Port request |

## Functions

QmiMessageDpmOpenPortInput * | qmi_message_dpm_open_port_input_new ()
QmiMessageDpmOpenPortInput * | qmi_message_dpm_open_port_input_ref ()
void | qmi_message_dpm_open_port_input_unref ()
gboolean | qmi_message_dpm_open_port_input_get_software_data_ports ()
gboolean | qmi_message_dpm_open_port_input_set_software_data_ports ()
gboolean | qmi_message_dpm_open_port_input_get_hardware_data_ports ()
gboolean | qmi_message_dpm_open_port_input_set_hardware_data_ports ()
gboolean | qmi_message_dpm_open_port_input_get_control_ports ()
gboolean | qmi_message_dpm_open_port_input_set_control_ports ()
QmiMessageDpmOpenPortOutput * | qmi_message_dpm_open_port_output_ref ()
void | qmi_message_dpm_open_port_output_unref ()
gboolean | qmi_message_dpm_open_port_output_get_result ()
void | qmi_client_dpm_open_port ()
QmiMessageDpmOpenPortOutput * | qmi_client_dpm_open_port_finish ()

## Types and Values

| QmiMessageDpmOpenPortInput
| QmiMessageDpmOpenPortInputSoftwareDataPortsElement
| QmiMessageDpmOpenPortInputHardwareDataPortsElement
| QmiMessageDpmOpenPortInputControlPortsElement
| QmiMessageDpmOpenPortOutput

## Object Hierarchy

        GBoxed
        ├── QmiMessageDpmOpenPortInput
        ╰── QmiMessageDpmOpenPortOutput

## Description

## Functions

### qmi_message_dpm_open_port_input_new ()

    QmiMessageDpmOpenPortInput *
    qmi_message_dpm_open_port_input_new (void);

Allocates a new QmiMessageDpmOpenPortInput.

#### Returns

the newly created QmiMessageDpmOpenPortInput. The returned value should be freed with `qmi_message_dpm_open_port_input_unref()`.

Since: 1.30

### qmi_message_dpm_open_port_input_ref ()

    QmiMessageDpmOpenPortInput *
    qmi_message_dpm_open_port_input_ref (QmiMessageDpmOpenPortInput *self);

Atomically increments the reference count of `self` by one.

#### Parameters

self | a QmiMessageDpmOpenPortInput. |

#### Returns

the new reference to `self` .

Since: 1.30

### qmi_message_dpm_open_port_input_unref ()

    void
    qmi_message_dpm_open_port_input_unref (QmiMessageDpmOpenPortInput *self);

Atomically decrements the reference count of `self` by one. If the reference count drops to 0, `self` is completely disposed.

#### Parameters

self | a QmiMessageDpmOpenPortInput. |

Since: 1.30

### qmi_message_dpm_open_port_input_get_software_data_ports ()

    gboolean
    qmi_message_dpm_open_port_input_get_software_data_ports
                                   (QmiMessageDpmOpenPortInput *self,
                                    GArray **value_software_data_ports,
                                    GError **error);

Get the 'Software Data Ports' field from `self` .

#### Parameters

self | a QmiMessageDpmOpenPortInput. |
value_software_data_ports | a placeholder for the output GArray of QmiMessageDpmOpenPortInputSoftwareDataPortsElement elements, or `NULL` if not required. Do not free it, it is owned by `self` . | [out][optional][element-type QmiMessageDpmOpenPortInputSoftwareDataPortsElement][transfer none]
error | Return location for error or `NULL`. |

#### Returns

`TRUE` if the field is found, `FALSE` otherwise.

[skip]

Since: 1.30

### qmi_message_dpm_open_port_input_set_software_data_ports ()

    gboolean
    qmi_message_dpm_open_port_input_set_software_data_ports
                                   (QmiMessageDpmOpenPortInput *self,
                                    GArray *value_software_data_ports,
                                    GError **error);

Set the 'Software Data Ports' field in the message.

#### Parameters

self | a QmiMessageDpmOpenPortInput. |
value_software_data_ports | a GArray of QmiMessageDpmOpenPortInputSoftwareDataPortsElement elements. A new reference to `value_software_data_ports` will be taken. | [in][element-type QmiMessageDpmOpenPortInputSoftwareDataPortsElement]
error | Return location for error or `NULL`. |

#### Returns

`TRUE` if `value` was successfully set, `FALSE` otherwise.

[skip]

Since: 1.30

### qmi_message_dpm_open_port_input_get_hardware_data_ports ()

    gboolean
    qmi_message_dpm_open_port_input_get_hardware_data_ports
                                   (QmiMessageDpmOpenPortInput *self,
                                    GArray **value_hardware_data_ports,
                                    GError **error);

Get the 'Hardware Data Ports' field from `self` .

#### Parameters

self | a QmiMessageDpmOpenPortInput. |
value_hardware_data_ports | a placeholder for the output GArray of QmiMessageDpmOpenPortInputHardwareDataPortsElement elements, or `NULL` if not required. Do not free it, it is owned by `self` . | [out][optional][element-type QmiMessageDpmOpenPortInputHardwareDataPortsElement][transfer none]
error | Return location for error or `NULL`. |

#### Returns

`TRUE` if the field is found, `FALSE` otherwise.

[skip]

Since: 1.30

### qmi_message_dpm_open_port_input_set_hardware_data_ports ()

    gboolean
    qmi_message_dpm_open_port_input_set_hardware_data_ports
                                   (QmiMessageDpmOpenPortInput *self,
                                    GArray *value_hardware_data_ports,
                                    GError **error);

Set the 'Hardware Data Ports' field in the message.

#### Parameters

self | a QmiMessageDpmOpenPortInput. |
value_hardware_data_ports | a GArray of QmiMessageDpmOpenPortInputHardwareDataPortsElement elements. A new reference to `value_hardware_data_ports` will be taken. | [in][element-type QmiMessageDpmOpenPortInputHardwareDataPortsElement]
error | Return location for error or `NULL`. |

#### Returns

`TRUE` if `value` was successfully set, `FALSE` otherwise.

[skip]

Since: 1.30

### qmi_message_dpm_open_port_input_get_control_ports ()

    gboolean
    qmi_message_dpm_open_port_input_get_control_ports
                                   (QmiMessageDpmOpenPortInput *self,
                                    GArray **value_control_ports,
                                    GError **error);

Get the 'Control Ports' field from `self` .

#### Parameters

self | a QmiMessageDpmOpenPortInput. |
value_control_ports | a placeholder for the output GArray of QmiMessageDpmOpenPortInputControlPortsElement elements, or `NULL` if not required. Do not free it, it is owned by `self` . | [out][optional][element-type QmiMessageDpmOpenPortInputControlPortsElement][transfer none]
error | Return location for error or `NULL`. |

#### Returns

`TRUE` if the field is found, `FALSE` otherwise.

[skip]

Since: 1.30

### qmi_message_dpm_open_port_input_set_control_ports ()

    gboolean
    qmi_message_dpm_open_port_input_set_control_ports
                                   (QmiMessageDpmOpenPortInput *self,
                                    GArray *value_control_ports,
                                    GError **error);

Set the 'Control Ports' field in the message.

#### Parameters

self | a QmiMessageDpmOpenPortInput. |
value_control_ports | a GArray of QmiMessageDpmOpenPortInputControlPortsElement elements. A new reference to `value_control_ports` will be taken. | [in][element-type QmiMessageDpmOpenPortInputControlPortsElement]
error | Return location for error or `NULL`. |

#### Returns

`TRUE` if `value` was successfully set, `FALSE` otherwise.

[skip]

Since: 1.30

### qmi_message_dpm_open_port_output_ref ()

    QmiMessageDpmOpenPortOutput *
    qmi_message_dpm_open_port_output_ref (QmiMessageDpmOpenPortOutput *self);

Atomically increments the reference count of `self` by one.

#### Parameters

self | a QmiMessageDpmOpenPortOutput. |

#### Returns

the new reference to `self` .

Since: 1.30

### qmi_message_dpm_open_port_output_unref ()

    void
    qmi_message_dpm_open_port_output_unref
                                   (QmiMessageDpmOpenPortOutput *self);

Atomically decrements the reference count of `self` by one. If the reference count drops to 0, `self` is completely disposed.

#### Parameters

self | a QmiMessageDpmOpenPortOutput. |

Since: 1.30

### qmi_message_dpm_open_port_output_get_result ()

    gboolean
    qmi_message_dpm_open_port_output_get_result
                                   (QmiMessageDpmOpenPortOutput *self,
                                    GError **error);

Get the result of the QMI operation.

#### Parameters

self | a QmiMessageDpmOpenPortOutput. |
error | Return location for error or `NULL`. |

#### Returns

`TRUE` if the QMI operation succeeded, `FALSE` if `error` is set.

[skip]

Since: 1.30

### qmi_client_dpm_open_port ()

    void
    qmi_client_dpm_open_port (QmiClientDpm *self,
                              QmiMessageDpmOpenPortInput *input,
                              guint timeout,
                              GCancellable *cancellable,
                              GAsyncReadyCallback callback,
                              gpointer user_data);

Asynchronously sends a Open Port request to the device.

When the operation is finished, `callback` will be invoked in the thread-default main loop of the thread you are calling this method from.

You can then call `qmi_client_dpm_open_port_finish()` to get the result of the operation.

#### Parameters

self | a QmiClientDpm. |
input | a QmiMessageDpmOpenPortInput. |
timeout | maximum time to wait for the method to complete, in seconds. |
cancellable | a GCancellable or `NULL`. |
callback | a GAsyncReadyCallback to call when the request is satisfied. |
user_data | user data to pass to `callback` . |

Since: 1.30

### qmi_client_dpm_open_port_finish ()

    QmiMessageDpmOpenPortOutput *
    qmi_client_dpm_open_port_finish (QmiClientDpm *self,
                                     GAsyncResult *res,
                                     GError **error);

Finishes an async operation started with `qmi_client_dpm_open_port()`.

#### Parameters

self | a QmiClientDpm. |
res | the GAsyncResult obtained from the GAsyncReadyCallback passed to `qmi_client_dpm_open_port()`. |
error | Return location for error or `NULL`. |

#### Returns

a QmiMessageDpmOpenPortOutput, or `NULL` if `error` is set. The returned value should be freed with `qmi_message_dpm_open_port_output_unref()`.

Since: 1.30

## Types and Values

### QmiMessageDpmOpenPortInput

    typedef struct _QmiMessageDpmOpenPortInput QmiMessageDpmOpenPortInput;

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

Since: 1.30

### QmiMessageDpmOpenPortInputSoftwareDataPortsElement

    typedef struct {
        QmiDataEndpointType endpoint_type;
        guint32 interface_number;
        gchar *port_name;
    } QmiMessageDpmOpenPortInputSoftwareDataPortsElement;

A QmiMessageDpmOpenPortInputSoftwareDataPortsElement struct.

#### Members

QmiDataEndpointType `endpoint_type`; | a QmiDataEndpointType. |
guint32 `interface_number`; | a guint32. |
gchar *`port_name`; | a string. |

Since: 1.30

### QmiMessageDpmOpenPortInputHardwareDataPortsElement

    typedef struct {
        QmiDataEndpointType endpoint_type;
        guint32 interface_number;
        guint32 rx_endpoint_number;
        guint32 tx_endpoint_number;
    } QmiMessageDpmOpenPortInputHardwareDataPortsElement;

A QmiMessageDpmOpenPortInputHardwareDataPortsElement struct.

#### Members

QmiDataEndpointType `endpoint_type`; | a QmiDataEndpointType. |
guint32 `interface_number`; | a guint32. |
guint32 `rx_endpoint_number`; | a guint32. |
guint32 `tx_endpoint_number`; | a guint32. |

Since: 1.30

### QmiMessageDpmOpenPortInputControlPortsElement

    typedef struct {
        gchar *port_name;
        QmiDataEndpointType endpoint_type;
        guint32 interface_number;
    } QmiMessageDpmOpenPortInputControlPortsElement;

A QmiMessageDpmOpenPortInputControlPortsElement struct.

#### Members

gchar *`port_name`; | a string. |
QmiDataEndpointType `endpoint_type`; | a QmiDataEndpointType. |
guint32 `interface_number`; | a guint32. |

Since: 1.30

### QmiMessageDpmOpenPortOutput

    typedef struct _QmiMessageDpmOpenPortOutput QmiMessageDpmOpenPortOutput;

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

Since: 1.30