RDK Documentation (Open Sourced RDK Components)
Device_WiFi_AccessPoint_AssociatedDevice.h
1 /*
2  * If not stated otherwise in this file or this component's Licenses.txt file the
3  * following copyright and licenses apply:
4  *
5  * Copyright 2016 RDK Management
6  *
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  * http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18 */
19 
20 /**
21  * @defgroup TR69_HOSTIF_WIFI_ACP_ASSOCIATEDDEV TR-069 Object (Device.WiFi.AccessPoint.{i}.AssociatedDevice.{i}.) Public APIs
22  * The module provide the interface specifications for TR-069 Object Access Point.
23  * A table of the devices currently associated with the access point.
24  * At most one entry in this table can exist with a given value for MACAddress.
25  * @ingroup TR69_HOSTIF_WIFI
26  */
27 
28 
29 /**
30 * @defgroup tr69hostif
31 * @{
32 * @defgroup hostif
33 * @{
34 **/
35 
36 
37 #ifndef DEVICE_WIFI_ACCESSPOINT_ASSOCIATEDDEVICE_H_
38 #define DEVICE_WIFI_ACCESSPOINT_ASSOCIATEDDEVICE_H_
39 
40 #include "hostIf_main.h"
41 #include "hostIf_utils.h"
42 #include "hostIf_tr69ReqHandler.h"
43 #include "hostIf_updateHandler.h"
44 
45 
47 
48  static GHashTable *ifHash;
49  GMutex* m_mutex;
50  int dev_id;
53 
54 public:
55  static class hostIf_WiFi_AccessPoint_AssociatedDevice *getInstance(int dev_id);
56  static GList* getAllInstances();
57  static void closeInstance(hostIf_WiFi_AccessPoint_AssociatedDevice *);
58  static void closeAllInstances();
59 
60  char MACAddress[17];
61  bool AuthenticationState;
62  unsigned int LastDataDownlinkRate;
63  unsigned int LastDataUplinkRate;
64  int SignalStrength;
65  unsigned int Retransmissions;
66  bool Active;
67 
68  /** @addtogroup TR69_HOSTIF_WIFI_ACP_ASSOCIATEDDEV
69  * @{
70  */
71  /**
72  * @brief Get the MAC Address of an Associated Device of a WiFi Interface.
73  *
74  * This function provides the MAC address of the WiFi interface of the device associated
75  * with this WiFi interface.
76  *
77  * @param[out] stMsgData TR-069 Host interface message request.
78  *
79  * @return Returns 0 on success, otherwise will return the appropriate error code.
80  */
82 
83  /**
84  * @brief Check Whether an associated device has authenticated (true) or not (false).
85  *
86  * @param[out] stMsgData TR-069 Host interface message request.
87  *
88  * @return Returns 0 on success, otherwise will return the appropriate error code.
89  */
91 
92  /**
93  * @brief Get the data transmit rate in kbps that was most recently used for transmission from the access
94  * point to the associated device.
95  *
96  * @param[out] stMsgData TR-069 Host interface message request.
97  *
98  * @return Returns 0 on success, otherwise will return the appropriate error code.
99  */
101 
102  /**
103  * @brief Get the data transmit rate in kbps that was most recently used for transmission from the associated
104  * device to the access point.
105  *
106  * @param[out] stMsgData TR-069 Host interface message request.
107  *
108  * @return Returns 0 on success, otherwise will return the appropriate error code.
109  */
111 
112  /**
113  * @brief Get the radio signal strength of the uplink from the associated device to the access point,
114  * measured in dBm, as an average of the last 100 packets received from the device.
115  *
116  * @param[out] stMsgData TR-069 Host interface message request.
117  *
118  * @return Returns 0 on success, otherwise will return the appropriate error code.
119  */
121 
122  /**
123  * @brief Get the number of packets that had to be re-transmitted, from the last 100 packets sent to the
124  * associated device. Multiple re-transmissions of the same packet count as one.
125  *
126  * @param[out] stMsgData TR-069 Host interface message request.
127  *
128  * @return Returns 0 on success, otherwise will return the appropriate error code.
129  */
131 
132  /**
133  * @brief Check whether or not this node is currently present in the WiFi AccessPoint network.
134  *
135  * The ability to list inactive nodes is optional. If the CPE includes inactive nodes in this table,
136  * Active MUST be set to false for each inactive node. The length of time an inactive node remains listed
137  * in this table is a local matter to the CPE.
138  *
139  * @param[out] stMsgData TR-069 Host interface message request.
140  *
141  * @return Returns 0 on success, otherwise will return the appropriate error code.
142  */
144 
145  /** @} */ //End of doxygen Tag TR69_HOSTIF_WIFI_ACP_ASSOCIATEDDEV
146 };
147 
148 
149 
150 #endif /* DEVICE_WIFI_ACCESSPOINT_ASSOCIATEDDEVICE_H_ */
151 
152 
153 /** @} */
154 /** @} */
hostIf_WiFi_AccessPoint_AssociatedDevice
Definition: Device_WiFi_AccessPoint_AssociatedDevice.h:46
hostIf_WiFi_AccessPoint_AssociatedDevice::get_hostIf_WiFi_AccessPoint_AssociatedDevice_LastDataDownlinkRate
int get_hostIf_WiFi_AccessPoint_AssociatedDevice_LastDataDownlinkRate(HOSTIF_MsgData_t *stMsgData)
Get the data transmit rate in kbps that was most recently used for transmission from the access point...
hostIf_WiFi_AccessPoint_AssociatedDevice::get_hostIf_WiFi_AccessPoint_AssociatedDevice_MACAddress
int get_hostIf_WiFi_AccessPoint_AssociatedDevice_MACAddress(HOSTIF_MsgData_t *stMsgData)
Get the MAC Address of an Associated Device of a WiFi Interface.
hostIf_WiFi_AccessPoint_AssociatedDevice::get_hostIf_WiFi_AccessPoint_AssociatedDevice_LastDataUplinkRate
int get_hostIf_WiFi_AccessPoint_AssociatedDevice_LastDataUplinkRate(HOSTIF_MsgData_t *stMsgData)
Get the data transmit rate in kbps that was most recently used for transmission from the associated d...
_HostIf_MsgData_t
Definition: hostIf_tr69ReqHandler.h:170
hostIf_main.h
hostIf_main API.
hostIf_WiFi_AccessPoint_AssociatedDevice::get_hostIf_WiFi_AccessPoint_AssociatedDevice_SignalStrength
int get_hostIf_WiFi_AccessPoint_AssociatedDevice_SignalStrength(HOSTIF_MsgData_t *stMsgData)
Get the radio signal strength of the uplink from the associated device to the access point,...
hostIf_WiFi_AccessPoint_AssociatedDevice::get_hostIf_WiFi_AccessPoint_AssociatedDevice_Retransmissions
int get_hostIf_WiFi_AccessPoint_AssociatedDevice_Retransmissions(HOSTIF_MsgData_t *stMsgData)
Get the number of packets that had to be re-transmitted, from the last 100 packets sent to the associ...
hostIf_WiFi_AccessPoint_AssociatedDevice::get_hostIf_WiFi_AccessPoint_AssociatedDevice_Active
int get_hostIf_WiFi_AccessPoint_AssociatedDevice_Active(HOSTIF_MsgData_t *stMsgData)
Check whether or not this node is currently present in the WiFi AccessPoint network.
hostIf_WiFi_AccessPoint_AssociatedDevice::get_hostIf_WiFi_AccessPoint_AssociatedDevice_AuthenticationState
int get_hostIf_WiFi_AccessPoint_AssociatedDevice_AuthenticationState(HOSTIF_MsgData_t *stMsgData)
Check Whether an associated device has authenticated (true) or not (false).