aboutsummaryrefslogtreecommitdiff
path: root/src/mm-base-sim.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mm-base-sim.c')
-rw-r--r--src/mm-base-sim.c25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/mm-base-sim.c b/src/mm-base-sim.c
index 1c0443ba..bb681c36 100644
--- a/src/mm-base-sim.c
+++ b/src/mm-base-sim.c
@@ -45,6 +45,7 @@ enum {
PROP_PATH,
PROP_CONNECTION,
PROP_MODEM,
+ PROP_SLOT_NUMBER,
PROP_LAST
};
@@ -64,6 +65,10 @@ struct _MMBaseSimPrivate {
MMBaseModem *modem;
/* The path where the SIM object is exported */
gchar *path;
+
+ /* The SIM slot number, which will be 0 always if the system
+ * doesn't support multiple SIMS. */
+ guint slot_number;
};
static guint signals[SIGNAL_LAST] = { 0 };
@@ -975,6 +980,12 @@ mm_base_sim_get_path (MMBaseSim *self)
return self->priv->path;
}
+guint
+mm_base_sim_get_slot_number (MMBaseSim *self)
+{
+ return self->priv->slot_number;
+}
+
/*****************************************************************************/
gboolean
@@ -1833,6 +1844,9 @@ set_property (GObject *object,
G_BINDING_DEFAULT | G_BINDING_SYNC_CREATE);
}
break;
+ case PROP_SLOT_NUMBER:
+ self->priv->slot_number = g_value_get_uint (value);
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
@@ -1857,6 +1871,9 @@ get_property (GObject *object,
case PROP_MODEM:
g_value_set_object (value, self->priv->modem);
break;
+ case PROP_SLOT_NUMBER:
+ g_value_set_uint (value, self->priv->slot_number);
+ break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
@@ -1971,6 +1988,14 @@ mm_base_sim_class_init (MMBaseSimClass *klass)
G_PARAM_READWRITE);
g_object_class_install_property (object_class, PROP_MODEM, properties[PROP_MODEM]);
+ properties[PROP_SLOT_NUMBER] =
+ g_param_spec_uint (MM_BASE_SIM_SLOT_NUMBER,
+ "Slot number",
+ "The slot number where the SIM is inserted",
+ 0, G_MAXUINT, 0,
+ G_PARAM_READWRITE);
+ g_object_class_install_property (object_class, PROP_SLOT_NUMBER, properties[PROP_SLOT_NUMBER]);
+
/* Signals */
signals[SIGNAL_PIN_LOCK_ENABLED] =
g_signal_new (MM_BASE_SIM_PIN_LOCK_ENABLED,