本文整理汇总了C++中MM_BASE_MODEM函数的典型用法代码示例。如果您正苦于以下问题:C++ MM_BASE_MODEM函数的具体用法?C++ MM_BASE_MODEM怎么用?C++ MM_BASE_MODEM使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了MM_BASE_MODEM函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: create_modem
static MMBaseModem *
create_modem (MMPlugin *self,
const gchar *sysfs_path,
const gchar **drivers,
guint16 vendor,
guint16 product,
GList *probes,
GError **error)
{
propagate_port_mode_results (probes);
#if defined WITH_QMI
if (mm_port_probe_list_has_qmi_port (probes)) {
mm_dbg ("QMI-powered Huawei modem found...");
return MM_BASE_MODEM (mm_broadband_modem_qmi_new (sysfs_path,
drivers,
mm_plugin_get_name (self),
vendor,
product));
}
#endif
return MM_BASE_MODEM (mm_broadband_modem_huawei_new (sysfs_path,
drivers,
mm_plugin_get_name (self),
vendor,
product));
}
开发者ID:1Anastaska,项目名称:ModemManager,代码行数:28,代码来源:mm-plugin-huawei.c
示例2: cgclass_update_ready
static void
cgclass_update_ready (MMBaseModem *self,
GAsyncResult *res,
SetAllowedModesContext *ctx)
{
GError *error = NULL;
mm_base_modem_at_command_finish (MM_BASE_MODEM (self), res, &error);
if (error) {
/* Let the error be critical. */
g_simple_async_result_take_error (ctx->result, error);
set_allowed_modes_context_complete_and_free (ctx);
return;
}
if (!ctx->wwsm_command) {
g_simple_async_result_set_op_res_gboolean (ctx->result, TRUE);
set_allowed_modes_context_complete_and_free (ctx);
return;
}
mm_base_modem_at_command (MM_BASE_MODEM (self),
ctx->wwsm_command,
3,
FALSE,
(GAsyncReadyCallback)wwsm_update_ready,
ctx);
}
开发者ID:1Anastaska,项目名称:ModemManager,代码行数:28,代码来源:mm-broadband-modem-wavecom.c
示例3: load_current_bands
static void
load_current_bands (MMIfaceModem *self,
GAsyncReadyCallback callback,
gpointer user_data)
{
GSimpleAsyncResult *result;
result = g_simple_async_result_new (G_OBJECT (self),
callback,
user_data,
load_current_bands);
if (mm_iface_modem_is_3g (self))
mm_base_modem_at_command (MM_BASE_MODEM (self),
"AT+WUBS?",
3,
FALSE,
(GAsyncReadyCallback)get_3g_band_ready,
result);
else
mm_base_modem_at_command (MM_BASE_MODEM (self),
"AT+WMBS?",
3,
FALSE,
(GAsyncReadyCallback)get_2g_band_ready,
result);
}
开发者ID:1Anastaska,项目名称:ModemManager,代码行数:27,代码来源:mm-broadband-modem-wavecom.c
示例4: get_ip_config_3gpp
static void
get_ip_config_3gpp (MMBroadbandBearer *self,
MMBroadbandModem *modem,
MMAtSerialPort *primary,
MMAtSerialPort *secondary,
MMPort *data,
guint cid,
GAsyncReadyCallback callback,
gpointer user_data)
{
gchar *command;
command = g_strdup_printf ("AT_OWANDATA=%d", cid);
mm_base_modem_at_command_full (MM_BASE_MODEM (modem),
primary,
command,
3,
FALSE,
NULL, /* cancellable */
(GAsyncReadyCallback)ip_config_ready,
get_ip_config_3gpp_context_new (MM_BROADBAND_BEARER_HSO (self),
MM_BASE_MODEM (modem),
primary,
cid,
callback,
user_data));
g_free (command);
}
开发者ID:telemaco,项目名称:ModemManager,代码行数:28,代码来源:mm-broadband-bearer-hso.c
示例5: create_modem
static MMBaseModem *
create_modem (MMPlugin *self,
const gchar *sysfs_path,
const gchar **drivers,
guint16 vendor,
guint16 product,
GList *probes,
GError **error)
{
#if defined WITH_QMI
if (mm_port_probe_list_has_qmi_port (probes)) {
mm_dbg ("QMI-powered Sierra modem found...");
return MM_BASE_MODEM (mm_broadband_modem_qmi_new (sysfs_path,
drivers,
mm_plugin_get_name (self),
vendor,
product));
}
#endif
if (sierra_port_probe_list_is_icera (probes))
return MM_BASE_MODEM (mm_broadband_modem_sierra_icera_new (sysfs_path,
drivers,
mm_plugin_get_name (self),
vendor,
product));
return MM_BASE_MODEM (mm_broadband_modem_sierra_new (sysfs_path,
drivers,
mm_plugin_get_name (self),
vendor,
product));
}
开发者ID:1Anastaska,项目名称:ModemManager,代码行数:33,代码来源:mm-plugin-sierra.c
示例6: setup_flow_control
static void
setup_flow_control (MMIfaceModem *self,
GAsyncReadyCallback callback,
gpointer user_data)
{
GSimpleAsyncResult *result;
gchar *cmd;
guint flow_control = 1; /* Default flow control: XON/XOFF */
switch (mm_base_modem_get_product_id (MM_BASE_MODEM (self)) & 0xFFFF) {
case 0x0021:
flow_control = 2; /* Telit IMC modems support only RTS/CTS mode */
break;
default:
break;
}
cmd = g_strdup_printf ("+IFC=%u,%u", flow_control, flow_control);
mm_base_modem_at_command (MM_BASE_MODEM (self),
cmd,
3,
FALSE,
NULL,
NULL);
result = g_simple_async_result_new (G_OBJECT (self),
callback,
user_data,
setup_flow_control);
g_simple_async_result_set_op_res_gboolean (result, TRUE);
g_simple_async_result_complete_in_idle (result);
g_object_unref (result);
g_free (cmd);
}
开发者ID:freedesktop-unofficial-mirror,项目名称:ModemManager__ModemManager,代码行数:33,代码来源:mm-broadband-modem-telit.c
示例7: create_modem
MM_PLUGIN_DEFINE_MAJOR_VERSION
MM_PLUGIN_DEFINE_MINOR_VERSION
/*****************************************************************************/
static MMBaseModem *
create_modem (MMPlugin *self,
const gchar *sysfs_path,
const gchar **drivers,
guint16 vendor,
guint16 product,
GList *probes,
GError **error)
{
#if defined WITH_QMI
if (mm_port_probe_list_has_qmi_port (probes)) {
mm_dbg ("QMI-powered SimTech modem found...");
return MM_BASE_MODEM (mm_broadband_modem_qmi_new (sysfs_path,
drivers,
mm_plugin_get_name (self),
vendor,
product));
}
#endif
return MM_BASE_MODEM (mm_broadband_modem_simtech_new (sysfs_path,
drivers,
mm_plugin_get_name (self),
vendor,
product));
}
开发者ID:abferm,项目名称:modemmanager,代码行数:31,代码来源:mm-plugin-simtech.c
示例8: setup_ports
static void
setup_ports (MMBroadbandModem *self)
{
MMAtSerialPort *ports[2];
guint i;
/* Call parent's setup ports first always */
MM_BROADBAND_MODEM_CLASS (mm_broadband_modem_zte_icera_parent_class)->setup_ports (self);
ports[0] = mm_base_modem_peek_port_primary (MM_BASE_MODEM (self));
ports[1] = mm_base_modem_peek_port_secondary (MM_BASE_MODEM (self));
/* Configure AT ports */
for (i = 0; i < 2; i++) {
if (!ports[i])
continue;
g_object_set (ports[i],
MM_PORT_CARRIER_DETECT, FALSE,
NULL);
}
/* Now reset the unsolicited messages we'll handle when enabled */
mm_common_zte_set_unsolicited_events_handlers (MM_BROADBAND_MODEM (self),
MM_BROADBAND_MODEM_ZTE_ICERA (self)->priv->unsolicited_setup,
FALSE);
}
开发者ID:1Anastaska,项目名称:ModemManager,代码行数:27,代码来源:mm-broadband-modem-zte-icera.c
示例9: modem_power_down
static void
modem_power_down (MMIfaceModem *self,
GAsyncReadyCallback callback,
gpointer user_data)
{
GSimpleAsyncResult *result;
result = g_simple_async_result_new (G_OBJECT (self),
callback,
user_data,
mm_common_sierra_modem_power_up);
/* For CDMA modems, run !pcstate */
if (mm_iface_modem_is_cdma_only (self)) {
mm_base_modem_at_command (MM_BASE_MODEM (self),
"!pcstate=0",
5,
FALSE,
(GAsyncReadyCallback)modem_power_down_ready,
result);
return;
}
/* For GSM modems, run AT+CFUN=4 (power save) */
mm_base_modem_at_command (MM_BASE_MODEM (self),
"+CFUN=4",
3,
FALSE,
(GAsyncReadyCallback)modem_power_down_ready,
result);
}
开发者ID:Stari4oK,项目名称:ModemManager,代码行数:31,代码来源:mm-broadband-modem-sierra.c
示例10: setup_ports
static void
setup_ports (MMBroadbandModem *_self)
{
MMBroadbandModemMbm *self = MM_BROADBAND_MODEM_MBM (_self);
MMPortSerialAt *ports[2];
guint i;
/* Call parent's setup ports first always */
MM_BROADBAND_MODEM_CLASS (mm_broadband_modem_mbm_parent_class)->setup_ports (_self);
ports[0] = mm_base_modem_peek_port_primary (MM_BASE_MODEM (self));
ports[1] = mm_base_modem_peek_port_secondary (MM_BASE_MODEM (self));
/* Setup unsolicited handlers which should be always on */
for (i = 0; i < 2; i++) {
if (!ports[i])
continue;
/* The Ericsson modems always have a free AT command port, so we
* don't need to flash the ports when disconnecting to get back to
* command mode. F5521gw R2A07 resets port properties like echo when
* flashed, leading to confusion. bgo #650740
*/
g_object_set (G_OBJECT (ports[i]),
MM_PORT_SERIAL_FLASH_OK, FALSE,
NULL);
mm_port_serial_at_add_unsolicited_msg_handler (
ports[i],
self->priv->emrdy_regex,
(MMPortSerialAtUnsolicitedMsgFn)emrdy_received,
self,
NULL);
/* Several unsolicited messages to always ignore... */
mm_port_serial_at_add_unsolicited_msg_handler (
ports[i],
self->priv->pacsp_regex,
NULL, NULL, NULL);
mm_port_serial_at_add_unsolicited_msg_handler (
ports[i],
self->priv->estksmenu_regex,
NULL, NULL, NULL);
mm_port_serial_at_add_unsolicited_msg_handler (
ports[i],
self->priv->estksms_regex,
NULL, NULL, NULL);
mm_port_serial_at_add_unsolicited_msg_handler (
ports[i],
self->priv->emwi_regex,
NULL, NULL, NULL);
}
/* Now reset the unsolicited messages we'll handle when enabled */
set_unsolicited_events_handlers (MM_BROADBAND_MODEM_MBM (self), FALSE);
}
开发者ID:bruceborden,项目名称:ModemManager,代码行数:59,代码来源:mm-broadband-modem-mbm.c
示例11: run_enabling_init_sequence
static void
run_enabling_init_sequence (EnablingModemInitContext *ctx)
{
mm_base_modem_at_sequence_full (MM_BASE_MODEM (ctx->self),
mm_base_modem_peek_port_primary (MM_BASE_MODEM (ctx->self)),
enabling_modem_init_sequence,
NULL, /* response_processor_context */
NULL, /* response_processor_context_free */
NULL, /* cancellable */
(GAsyncReadyCallback)enabling_init_sequence_ready,
ctx);
}
开发者ID:bruceborden,项目名称:ModemManager,代码行数:12,代码来源:mm-broadband-modem-mbm.c
示例12: load_access_technologies_step
static void
load_access_technologies_step (AccessTechnologiesContext *ctx)
{
switch (ctx->step) {
case ACCESS_TECHNOLOGIES_STEP_FIRST:
/* Go on to next step */
ctx->step++;
case ACCESS_TECHNOLOGIES_STEP_OSSYS:
mm_base_modem_at_command (MM_BASE_MODEM (ctx->self),
"_OSSYS?",
3,
FALSE,
(GAsyncReadyCallback)ossys_query_ready,
ctx);
break;
case ACCESS_TECHNOLOGIES_STEP_OCTI:
if (ctx->check_2g) {
mm_base_modem_at_command (MM_BASE_MODEM (ctx->self),
"_OCTI?",
3,
FALSE,
(GAsyncReadyCallback)octi_query_ready,
ctx);
return;
}
/* Go on to next step */
ctx->step++;
case ACCESS_TECHNOLOGIES_STEP_OWCTI:
if (ctx->check_3g) {
mm_base_modem_at_command (MM_BASE_MODEM (ctx->self),
"_OWCTI?",
3,
FALSE,
(GAsyncReadyCallback)owcti_query_ready,
ctx);
return;
}
/* Go on to next step */
ctx->step++;
case ACCESS_TECHNOLOGIES_STEP_LAST:
/* All done, set result and complete */
g_simple_async_result_set_op_res_gpointer (ctx->result,
GUINT_TO_POINTER (ctx->access_technology),
NULL);
access_technologies_context_complete_and_free (ctx);
break;
}
}
开发者ID:bruceborden,项目名称:ModemManager,代码行数:52,代码来源:mm-broadband-modem-option.c
示例13: set_unsolicited_events_handlers
static void
set_unsolicited_events_handlers (MMBroadbandModemOption *self,
gboolean enable)
{
MMPortSerialAt *ports[2];
guint i;
ports[0] = mm_base_modem_peek_port_primary (MM_BASE_MODEM (self));
ports[1] = mm_base_modem_peek_port_secondary (MM_BASE_MODEM (self));
/* Enable unsolicited events in given port */
for (i = 0; i < 2; i++) {
if (!ports[i])
continue;
/* Access technology related */
mm_port_serial_at_add_unsolicited_msg_handler (
ports[i],
self->priv->_ossysi_regex,
enable ? (MMPortSerialAtUnsolicitedMsgFn)option_ossys_tech_changed : NULL,
enable ? self : NULL,
NULL);
mm_port_serial_at_add_unsolicited_msg_handler (
ports[i],
self->priv->_octi_regex,
enable ? (MMPortSerialAtUnsolicitedMsgFn)option_2g_tech_changed : NULL,
enable ? self : NULL,
NULL);
mm_port_serial_at_add_unsolicited_msg_handler (
ports[i],
self->priv->_ouwcti_regex,
enable ? (MMPortSerialAtUnsolicitedMsgFn)option_3g_tech_changed : NULL,
enable ? self : NULL,
NULL);
/* Signal quality related */
mm_port_serial_at_add_unsolicited_msg_handler (
ports[i],
self->priv->_osigq_regex,
enable ? (MMPortSerialAtUnsolicitedMsgFn)option_signal_changed : NULL,
enable ? self : NULL,
NULL);
/* Other unsolicited events to always ignore */
if (!enable)
mm_port_serial_at_add_unsolicited_msg_handler (
ports[i],
self->priv->ignore_regex,
NULL, NULL, NULL);
}
}
开发者ID:bruceborden,项目名称:ModemManager,代码行数:51,代码来源:mm-broadband-modem-option.c
示例14: modem_3gpp_enable_unsolicited_events
static void
modem_3gpp_enable_unsolicited_events (MMIfaceModem3gpp *self,
GAsyncReadyCallback callback,
gpointer user_data)
{
mm_base_modem_at_sequence_full (
MM_BASE_MODEM (self),
mm_base_modem_peek_port_secondary (MM_BASE_MODEM (self)),
unsolicited_enable_sequence,
NULL, /* response_processor_context */
NULL, /* response_processor_context_free */
NULL, /* cancellable */
callback,
user_data);
}
开发者ID:freedesktop-unofficial-mirror,项目名称:ModemManager__ModemManager,代码行数:15,代码来源:mm-broadband-modem-telit.c
示例15: load_current_modes
static void
load_current_modes (MMIfaceModem *self,
GAsyncReadyCallback callback,
gpointer user_data)
{
GSimpleAsyncResult *result;
result = g_simple_async_result_new (G_OBJECT (self),
callback,
user_data,
load_current_modes);
/* Load allowed modes only in 3GPP modems */
if (!mm_iface_modem_is_3gpp (self)) {
g_simple_async_result_set_error (
result,
MM_CORE_ERROR,
MM_CORE_ERROR_UNSUPPORTED,
"Loading allowed modes not supported in CDMA-only modems");
g_simple_async_result_complete_in_idle (result);
g_object_unref (result);
return;
}
mm_base_modem_at_command (MM_BASE_MODEM (self),
"$NWRAT?",
3,
FALSE,
(GAsyncReadyCallback)nwrat_query_ready,
result);
}
开发者ID:abferm,项目名称:modemmanager,代码行数:31,代码来源:mm-broadband-modem-novatel.c
示例16: modem_time_check_support_finish
static gboolean
modem_time_check_support_finish (MMIfaceModemTime *self,
GAsyncResult *res,
GError **error)
{
return !!mm_base_modem_at_command_finish (MM_BASE_MODEM (self), res, error);
}
开发者ID:abferm,项目名称:modemmanager,代码行数:7,代码来源:mm-broadband-modem-novatel.c
示例17: modem_cdma_get_detailed_registration_state
static void
modem_cdma_get_detailed_registration_state (MMIfaceModemCdma *self,
MMModemCdmaRegistrationState cdma1x_state,
MMModemCdmaRegistrationState evdo_state,
GAsyncReadyCallback callback,
gpointer user_data)
{
DetailedRegistrationStateContext *ctx;
GByteArray *nweri;
MMPortSerialQcdm *port;
/* Setup context */
ctx = g_new0 (DetailedRegistrationStateContext, 1);
ctx->self = g_object_ref (self);
ctx->result = g_simple_async_result_new (G_OBJECT (self),
callback,
user_data,
modem_cdma_get_detailed_registration_state);
ctx->state.detailed_cdma1x_state = cdma1x_state;
ctx->state.detailed_evdo_state = evdo_state;
port = mm_base_modem_peek_port_qcdm (MM_BASE_MODEM (self));
/* Try MSM6800 first since newer cards use that */
nweri = g_byte_array_sized_new (25);
nweri->len = qcdm_cmd_nw_subsys_eri_new ((char *) nweri->data, 25, QCDM_NW_CHIPSET_6800);
g_assert (nweri->len);
mm_port_serial_qcdm_command (port,
nweri,
3,
NULL,
(GAsyncReadyCallback)reg_eri_6800_cb,
ctx);
g_byte_array_unref (nweri);
}
开发者ID:abferm,项目名称:modemmanager,代码行数:35,代码来源:mm-broadband-modem-novatel.c
示例18: modem_init_finish
static gboolean
modem_init_finish (MMIfaceModem *self,
GAsyncResult *res,
GError **error)
{
return !mm_base_modem_at_sequence_finish (MM_BASE_MODEM (self), res, NULL, error);
}
开发者ID:1Anastaska,项目名称:ModemManager,代码行数:7,代码来源:mm-broadband-modem-nokia.c
示例19: setup_flow_control
static void
setup_flow_control (MMIfaceModem *self,
GAsyncReadyCallback callback,
gpointer user_data)
{
GSimpleAsyncResult *result;
result = g_simple_async_result_new (G_OBJECT (self),
callback,
user_data,
setup_flow_control);
/* Enable RTS/CTS flow control.
* Other available values:
* AT&K0: Disable flow control
* AT&K3: RTS/CTS
* AT&K4: XOFF/XON
* AT&K6: Both RTS/CTS and XOFF/XON
*/
mm_base_modem_at_command (MM_BASE_MODEM (self),
"&K3",
3,
FALSE,
(GAsyncReadyCallback)setup_flow_control_ready,
result);
}
开发者ID:1Anastaska,项目名称:ModemManager,代码行数:26,代码来源:mm-broadband-modem-iridium.c
示例20: load_signal_quality_finish
static guint
load_signal_quality_finish (MMIfaceModem *self,
GAsyncResult *res,
GError **error)
{
gint quality = 0;
const gchar *result;
result = mm_base_modem_at_command_finish (MM_BASE_MODEM (self), res, error);
if (!result)
return 0;
/* Skip possible whitespaces after '+CSQF:' and before the response */
result = mm_strip_tag (result, "+CSQF:");
while (*result == ' ')
result++;
if (sscanf (result, "%d", &quality))
/* Normalize the quality. <rssi> is NOT given in dBs,
* given as a relative value between 0 and 5 */
quality = CLAMP (quality, 0, 5) * 100 / 5;
else
g_set_error (error,
MM_CORE_ERROR,
MM_CORE_ERROR_FAILED,
"Could not parse signal quality results");
return quality;
}
开发者ID:1Anastaska,项目名称:ModemManager,代码行数:29,代码来源:mm-broadband-modem-iridium.c
注:本文中的MM_BASE_MODEM函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论