StationList.h
Go to the documentation of this file.
1 /****
2  * Sming Framework Project - Open Source framework for high efficiency native ESP8266 development.
3  * Created 2015 by Skurydin Alexey
4  * http://github.com/SmingHub/Sming
5  * All files of the Sming Core are provided under the LGPL v3 license.
6  *
7  * StationList.h
8  *
9  ****/
10 
11 #pragma once
12 
13 #include <WString.h>
14 #include <IpAddress.h>
15 #include <MacAddress.h>
16 #include <Data/LinkedObjectList.h>
17 
18 class StationInfo : public LinkedObjectTemplate<StationInfo>
19 {
20 public:
21  virtual MacAddress mac() const = 0;
22 
27  virtual int8_t rssi() const = 0;
28 
33  virtual IpAddress ip() const = 0;
34 };
35 
36 class StationList : public OwnedLinkedObjectListTemplate<StationInfo>
37 {
38 public:
39  virtual ~StationList()
40  {
41  }
42 };
43 
A class to make it easier to handle and pass around IP addresses.
Definition: IpAddress.h:45
Base class template for linked items with type casting.
Definition: LinkedObject.h:62
A network hardware (MAC) address.
Definition: MacAddress.h:39
Class template for singly-linked list of objects.
Definition: LinkedObjectList.h:175
Definition: StationList.h:19
virtual IpAddress ip() const =0
Assigned IP address. Available only on some architectures.
virtual MacAddress mac() const =0
virtual int8_t rssi() const =0
Current average rssi of connected station. Available only on some architectures.
Definition: StationList.h:37
virtual ~StationList()
Definition: StationList.h:39