blob: b43c2389999a4d6085da18f54b9d3512eb80823e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
#pragma once
// Moz headers (alphabetical)
#include "nsAutoPtr.h"
#include "nsCOMArray.h"
#include "win_wlanLibrary.h"
class nsWifiAccessPoint;
// This class allows the wifi monitor to use WinWifiScanner and WinXPWifiScanner interchangeably.
class WindowsWifiScannerInterface {
public:
virtual ~WindowsWifiScannerInterface() {}
virtual nsresult GetAccessPointsFromWLAN(nsCOMArray<nsWifiAccessPoint> &accessPoints) = 0;
};
class WinWifiScanner : public WindowsWifiScannerInterface {
public:
WinWifiScanner();
virtual ~WinWifiScanner();
/**
* GetAccessPointsFromWLAN
*
* Scans the available wireless interfaces for nearby access points and
* populates the supplied collection with them
*
* @param accessPoints The collection to populate with available APs
* @return NS_OK on success, failure codes on failure
*/
nsresult GetAccessPointsFromWLAN(nsCOMArray<nsWifiAccessPoint> &accessPoints);
private:
nsAutoPtr<WinWLANLibrary> mWlanLibrary;
};
|