## UIM enumerations and flags UIM enumerations and flags |

## Synopsis

    enum                QmiUimSessionType;
    enum                QmiUimFileType;
    enum                QmiUimSecurityAttributeLogic;
    enum                QmiUimSecurityAttribute;

    const gchar *       qmi_uim_session_type_get_string     (QmiUimSessionType val);
    const gchar *       qmi_uim_file_type_get_string        (QmiUimFileType val);
    const gchar *       qmi_uim_security_attribute_logic_get_string
                                                            (QmiUimSecurityAttributeLogic val);
    gchar *             qmi_uim_security_attribute_build_string_from_mask
                                                            (QmiUimSecurityAttribute mask);

## Object Hierarchy

      GEnum
       +----QmiUimSessionType

      GEnum
       +----QmiUimFileType

      GEnum
       +----QmiUimSecurityAttributeLogic

      GFlags
       +----QmiUimSecurityAttribute

## Description

This section defines enumerations and flags used in the UIM service interface.

## Details

### enum QmiUimSessionType

    typedef enum {
        QMI_UIM_SESSION_TYPE_PRIMARY_GW_PROVISIONING   = 0,
        QMI_UIM_SESSION_TYPE_PRIMARY_1X_PROVISIONING   = 1,
        QMI_UIM_SESSION_TYPE_SECONDARY_GW_PROVISIONING = 2,
        QMI_UIM_SESSION_TYPE_SECONDARY_1X_PROVISIONING = 3,
        QMI_UIM_SESSION_TYPE_NONPROVISIONING_SLOT_1    = 4,
        QMI_UIM_SESSION_TYPE_NONPROVISIONING_SLOT_2    = 5,
        QMI_UIM_SESSION_TYPE_CARD_SLOT_1               = 6,
        QMI_UIM_SESSION_TYPE_CARD_SLOT_2               = 7,
        QMI_UIM_SESSION_TYPE_LOGICAL_CHANNEL_SLOT_1    = 8,
        QMI_UIM_SESSION_TYPE_LOGICAL_CHANNEL_SLOT_2    = 9
    } QmiUimSessionType;

Type of UIM session.

`QMI_UIM_SESSION_TYPE_PRIMARY_GW_PROVISIONING` | Primary GSM/WCDMA provisioning.
`QMI_UIM_SESSION_TYPE_PRIMARY_1X_PROVISIONING` | Primary CDMA1x provisioning.
`QMI_UIM_SESSION_TYPE_SECONDARY_GW_PROVISIONING` | Secondary GSM/WCDMA provisioning.
`QMI_UIM_SESSION_TYPE_SECONDARY_1X_PROVISIONING` | Secondary CDMA1x provisioning.
`QMI_UIM_SESSION_TYPE_NONPROVISIONING_SLOT_1` | Nonprovisioning on slot 1.
`QMI_UIM_SESSION_TYPE_NONPROVISIONING_SLOT_2` | Nonprovisioning on slot 2.
`QMI_UIM_SESSION_TYPE_CARD_SLOT_1` | Card on slot 1.
`QMI_UIM_SESSION_TYPE_CARD_SLOT_2` | Card on slot 2.
`QMI_UIM_SESSION_TYPE_LOGICAL_CHANNEL_SLOT_1` | Logical channel on slot 1.
`QMI_UIM_SESSION_TYPE_LOGICAL_CHANNEL_SLOT_2` | Logical channel on slot 2.

### enum QmiUimFileType

    typedef enum {
        QMI_UIM_FILE_TYPE_TRANSPARENT    = 0,
        QMI_UIM_FILE_TYPE_CYCLIC         = 1,
        QMI_UIM_FILE_TYPE_LINEAR_FIXED   = 2,
        QMI_UIM_FILE_TYPE_DEDICATED_FILE = 3,
        QMI_UIM_FILE_TYPE_MASTER_FILE    = 4
    } QmiUimFileType;

Type of UIM file.

`QMI_UIM_FILE_TYPE_TRANSPARENT` | Transparent.
`QMI_UIM_FILE_TYPE_CYCLIC` | Cyclic.
`QMI_UIM_FILE_TYPE_LINEAR_FIXED` | Linear fixed.
`QMI_UIM_FILE_TYPE_DEDICATED_FILE` | Dedicated file.
`QMI_UIM_FILE_TYPE_MASTER_FILE` | Master file.

### enum QmiUimSecurityAttributeLogic

    typedef enum {
        QMI_UIM_SECURITY_ATTRIBUTE_LOGIC_ALWAYS = 0,
        QMI_UIM_SECURITY_ATTRIBUTE_LOGIC_NEVER  = 1,
        QMI_UIM_SECURITY_ATTRIBUTE_LOGIC_AND    = 2,
        QMI_UIM_SECURITY_ATTRIBUTE_LOGIC_OR     = 3,
        QMI_UIM_SECURITY_ATTRIBUTE_LOGIC_SINGLE = 4
    } QmiUimSecurityAttributeLogic;

Logic applicable to security attributes.

`QMI_UIM_SECURITY_ATTRIBUTE_LOGIC_ALWAYS` | Always.
`QMI_UIM_SECURITY_ATTRIBUTE_LOGIC_NEVER` | Never.
`QMI_UIM_SECURITY_ATTRIBUTE_LOGIC_AND` | And.
`QMI_UIM_SECURITY_ATTRIBUTE_LOGIC_OR` | Or.
`QMI_UIM_SECURITY_ATTRIBUTE_LOGIC_SINGLE` | Single.

### enum QmiUimSecurityAttribute

    typedef enum {
        QMI_UIM_SECURITY_ATTRIBUTE_PIN1 = 1 << 0,
        QMI_UIM_SECURITY_ATTRIBUTE_PIN2 = 1 << 1,
        QMI_UIM_SECURITY_ATTRIBUTE_UPIN = 1 << 2,
        QMI_UIM_SECURITY_ATTRIBUTE_ADM  = 1 << 3
    } QmiUimSecurityAttribute;

Security Attributes.

`QMI_UIM_SECURITY_ATTRIBUTE_PIN1` | PIN1.
`QMI_UIM_SECURITY_ATTRIBUTE_PIN2` | PIN2.
`QMI_UIM_SECURITY_ATTRIBUTE_UPIN` | UPIN.
`QMI_UIM_SECURITY_ATTRIBUTE_ADM` | ADM.

### qmi_uim_session_type_get_string ()

    const gchar *       qmi_uim_session_type_get_string     (QmiUimSessionType val);

Gets the nickname string for the QmiUimSessionType specified at `val`.

`val` : | a QmiUimSessionType.
Returns : | a string with the nickname, or `NULL` if not found. Do not free the returned value. [transfer none]

### qmi_uim_file_type_get_string ()

    const gchar *       qmi_uim_file_type_get_string        (QmiUimFileType val);

Gets the nickname string for the QmiUimFileType specified at `val`.

`val` : | a QmiUimFileType.
Returns : | a string with the nickname, or `NULL` if not found. Do not free the returned value. [transfer none]

### qmi_uim_security_attribute_logic_get_string ()

    const gchar *       qmi_uim_security_attribute_logic_get_string
                                                            (QmiUimSecurityAttributeLogic val);

Gets the nickname string for the QmiUimSecurityAttributeLogic specified at `val`.

`val` : | a QmiUimSecurityAttributeLogic.
Returns : | a string with the nickname, or `NULL` if not found. Do not free the returned value. [transfer none]

### qmi_uim_security_attribute_build_string_from_mask ()

    gchar *             qmi_uim_security_attribute_build_string_from_mask
                                                            (QmiUimSecurityAttribute mask);

Builds a string containing a comma-separated list of nicknames for each QmiUimSecurityAttribute in `mask`.

`mask` : | bitmask of QmiUimSecurityAttribute values.
Returns : | a string with the list of nicknames, or `NULL` if none given. The returned value should be freed with `g_free()`. [transfer full]