blob: 04f058e20768ff4650d87a405fc789786f723368 [file] [log] [blame]
Darin Petkovbec79a22011-08-01 14:47:17 -07001// Copyright (c) 2011 The Chromium OS Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef SHILL_MODEM_CDMA_PROXY_INTERFACE_
6#define SHILL_MODEM_CDMA_PROXY_INTERFACE_
7
8#include <base/basictypes.h>
9
10namespace shill {
11
12// These are the methods that a ModemManager.Modem.CDMA proxy must support. The
13// interface is provided so that it can be mocked in tests.
14class ModemCDMAProxyInterface {
15 public:
16 virtual ~ModemCDMAProxyInterface() {}
17
18 virtual void GetRegistrationState(uint32 *cdma_1x_state,
19 uint32 *evdo_state) = 0;
Darin Petkovd9661952011-08-03 16:25:42 -070020
21 virtual uint32 GetSignalQuality() = 0;
22};
23
24// ModemManager.Modem.CDMA signal listener to be associated with the proxy.
25class ModemCDMAProxyListener {
26 public:
27 virtual ~ModemCDMAProxyListener() {}
28
29 virtual void OnCDMARegistrationStateChanged(uint32 state_1x,
30 uint32 state_evdo) = 0;
31 virtual void OnCDMASignalQualityChanged(uint32 strength) = 0;
Darin Petkovbec79a22011-08-01 14:47:17 -070032};
33
34} // namespace shill
35
36#endif // SHILL_MODEM_CDMA_PROXY_INTERFACE_