aboutsummaryrefslogtreecommitdiff
path: root/src/mm-modem.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mm-modem.h')
-rw-r--r--src/mm-modem.h35
1 files changed, 35 insertions, 0 deletions
diff --git a/src/mm-modem.h b/src/mm-modem.h
index 29f72b43..1a379411 100644
--- a/src/mm-modem.h
+++ b/src/mm-modem.h
@@ -21,6 +21,27 @@
#include "mm-port.h"
+typedef enum {
+ MM_MODEM_STATE_UNKNOWN = 0,
+ MM_MODEM_STATE_DISABLED = 10,
+ MM_MODEM_STATE_DISABLING = 20,
+ MM_MODEM_STATE_ENABLING = 30,
+ MM_MODEM_STATE_ENABLED = 40,
+ MM_MODEM_STATE_SEARCHING = 50,
+ MM_MODEM_STATE_REGISTERED = 60,
+ MM_MODEM_STATE_DISCONNECTING = 70,
+ MM_MODEM_STATE_CONNECTING = 80,
+ MM_MODEM_STATE_CONNECTED = 90,
+
+ MM_MODEM_STATE_LAST = MM_MODEM_STATE_CONNECTED
+} MMModemState;
+
+typedef enum {
+ MM_MODEM_STATE_REASON_NONE = 0
+} MMModemStateReason;
+
+#define DBUS_PATH_TAG "dbus-path"
+
#define MM_TYPE_MODEM (mm_modem_get_type ())
#define MM_MODEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), MM_TYPE_MODEM, MMModem))
#define MM_IS_MODEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), MM_TYPE_MODEM))
@@ -33,6 +54,7 @@
#define MM_MODEM_IP_METHOD "ip-method"
#define MM_MODEM_VALID "valid" /* not exported */
#define MM_MODEM_PLUGIN "plugin" /* not exported */
+#define MM_MODEM_STATE "state" /* not exported */
#define MM_MODEM_TYPE_UNKNOWN 0
#define MM_MODEM_TYPE_GSM 1
@@ -52,6 +74,7 @@ typedef enum {
MM_MODEM_PROP_IP_METHOD,
MM_MODEM_PROP_VALID, /* Not exported */
MM_MODEM_PROP_PLUGIN, /* Not exported */
+ MM_MODEM_PROP_STATE, /* Not exported */
} MMModemProp;
typedef struct _MMModem MMModem;
@@ -126,6 +149,12 @@ struct _MMModem {
void (*get_info) (MMModem *self,
MMModemInfoFn callback,
gpointer user_data);
+
+ /* Signals */
+ void (*state_changed) (MMModem *self,
+ MMModemState new_state,
+ MMModemState old_state,
+ MMModemStateReason reason);
};
GType mm_modem_get_type (void);
@@ -174,5 +203,11 @@ gboolean mm_modem_get_valid (MMModem *self);
char *mm_modem_get_device (MMModem *self);
+MMModemState mm_modem_get_state (MMModem *self);
+
+void mm_modem_set_state (MMModem *self,
+ MMModemState new_state,
+ MMModemStateReason reason);
+
#endif /* MM_MODEM_H */