From 4fe7c7d637644de6b24e7d71a45aad3647086e19 Mon Sep 17 00:00:00 2001 From: Aleksander Morgado Date: Fri, 24 Aug 2012 11:47:14 +0200 Subject: [PATCH] base-modem-at: new `mm_base_modem_at_command_raw()' Equivalent to `mm_base_modem_at_command()', but with a raw setup. --- src/mm-base-modem-at.c | 39 +++++++++++++++++++++++++++++++-------- src/mm-base-modem-at.h | 7 +++++++ 2 files changed, 38 insertions(+), 8 deletions(-) diff --git a/src/mm-base-modem-at.c b/src/mm-base-modem-at.c index 70fbdc46..a67cf966 100644 --- a/src/mm-base-modem-at.c +++ b/src/mm-base-modem-at.c @@ -561,13 +561,14 @@ mm_base_modem_at_command_finish (MMBaseModem *self, return mm_base_modem_at_command_full_finish (self, res, error); } -void -mm_base_modem_at_command (MMBaseModem *self, - const gchar *command, - guint timeout, - gboolean allow_cached, - GAsyncReadyCallback callback, - gpointer user_data) +static void +_at_command (MMBaseModem *self, + const gchar *command, + guint timeout, + gboolean allow_cached, + gboolean is_raw, + GAsyncReadyCallback callback, + gpointer user_data) { MMAtSerialPort *port; GError *error = NULL; @@ -588,8 +589,30 @@ mm_base_modem_at_command (MMBaseModem *self, command, timeout, allow_cached, - FALSE, + is_raw, NULL, callback, user_data); } + +void +mm_base_modem_at_command (MMBaseModem *self, + const gchar *command, + guint timeout, + gboolean allow_cached, + GAsyncReadyCallback callback, + gpointer user_data) +{ + _at_command (self, command, timeout, allow_cached, FALSE, callback, user_data); +} + +void +mm_base_modem_at_command_raw (MMBaseModem *self, + const gchar *command, + guint timeout, + gboolean allow_cached, + GAsyncReadyCallback callback, + gpointer user_data) +{ + _at_command (self, command, timeout, allow_cached, TRUE, callback, user_data); +} diff --git a/src/mm-base-modem-at.h b/src/mm-base-modem-at.h index 3e43c4f7..18b3cdc5 100644 --- a/src/mm-base-modem-at.h +++ b/src/mm-base-modem-at.h @@ -138,6 +138,13 @@ void mm_base_modem_at_command (MMBaseModem *self, gboolean allow_cached, GAsyncReadyCallback callback, gpointer user_data); +/* Like mm_base_modem_at_command() except does not prefix with AT */ +void mm_base_modem_at_command_raw (MMBaseModem *self, + const gchar *command, + guint timeout, + gboolean allow_cached, + GAsyncReadyCallback callback, + gpointer user_data); const gchar *mm_base_modem_at_command_finish (MMBaseModem *self, GAsyncResult *res, GError **error);