Telematics SDK - API Reference
v1.64.0
|
Data Structures | |
struct | telux::wlan::ApInfo |
struct | telux::wlan::ApNetInfo |
struct | telux::wlan::ApStatus |
struct | telux::wlan::StaStatus |
struct | telux::wlan::InterfaceStatus |
struct | telux::wlan::RegulatoryParams |
class | telux::wlan::IWlanDeviceManager |
WlanDeviceManager is a primary interface for configuring Wireless LAN. it provide APIs to enable, configure, activate, and modify modes. More... | |
class | telux::wlan::IWlanListener |
class | telux::wlan::WlanFactory |
WlanFactory is the central factory to create all wlan classes. More... | |
Variables | |
HwDeviceType | telux::wlan::InterfaceStatus::device |
std::vector< ApStatus > | telux::wlan::InterfaceStatus::apStatus |
std::vector< StaStatus > | telux::wlan::InterfaceStatus::staStatus |
std::string | telux::wlan::RegulatoryParams::country |
float | telux::wlan::RegulatoryParams::opChannel |
std::vector< float > | telux::wlan::RegulatoryParams::opClass |
uint32_t | telux::wlan::RegulatoryParams::txPowerMw |
This section contains APIs related to device configuration management, such as the number of access points and stations enabled, WLAN enable/disable, etc
struct telux::wlan::ApInfo |
struct telux::wlan::ApNetInfo |
Ap Network Info
Data Fields | ||
---|---|---|
ApInfo | info |
Ap information (AP type) |
string | ssid |
SSID associated with this network |
struct telux::wlan::ApStatus |
struct telux::wlan::StaStatus |
Station Status
Data Fields | ||
---|---|---|
Id | id |
Station Id |
string | name |
Network interface name |
string | ipv4Address |
Public IP V4 address |
string | ipv6Address |
Public IP V6 address |
string | macAddress |
MAC address |
StaInterfaceStatus | status |
Interface status |
struct telux::wlan::InterfaceStatus |
Wlan Interface status
Data Fields | ||
---|---|---|
HwDeviceType | device | |
vector< ApStatus > | apStatus |
Vector of active APs status |
vector< StaStatus > | staStatus |
Vector of active Sta status |
struct telux::wlan::RegulatoryParams |
Wlan Regulatory Setting
class telux::wlan::IWlanDeviceManager |
WlanDeviceManager is a primary interface for configuring Wireless LAN. it provide APIs to enable, configure, activate, and modify modes.
Public Member Functions | |
virtual telux::common::ServiceStatus | getServiceStatus ()=0 |
virtual telux::common::ErrorCode | enable (bool enable)=0 |
virtual telux::common::ErrorCode | setMode (int numOfAp, int numOfSta)=0 |
virtual telux::common::ErrorCode | getConfig (int &numAp, int &numSta)=0 |
virtual telux::common::ErrorCode | getStatus (bool &isEnabled, std::vector< InterfaceStatus > &status)=0 |
virtual telux::common::ErrorCode | setActiveCountry (std::string country)=0 |
virtual telux::common::ErrorCode | getRegulatoryParams (RegulatoryParams ®ulatoryParams)=0 |
virtual telux::common::ErrorCode | setTxPower (uint32_t txPowerMw)=0 |
virtual telux::common::ErrorCode | getTxPower (uint32_t &txPowerMw)=0 |
virtual telux::common::ErrorCode | registerListener (std::weak_ptr< IWlanListener > listener)=0 |
virtual telux::common::ErrorCode | deregisterListener (std::weak_ptr< IWlanListener > listener)=0 |
virtual | ~IWlanDeviceManager () |
class telux::wlan::IWlanListener |
Public Member Functions | |
virtual void | onServiceStatusChange (telux::common::ServiceStatus status) |
virtual void | onTempCrossed (float temperature, DevicePerfState perfState) |
virtual void | onEnableChanged (bool enable) |
virtual | ~IWlanListener () |
class telux::wlan::WlanFactory |
WlanFactory is the central factory to create all wlan classes.
Public Member Functions | |
virtual std::shared_ptr< IWlanDeviceManager > | getWlanDeviceManager (telux::common::InitResponseCb clientCallback=nullptr)=0 |
virtual std::shared_ptr< IApInterfaceManager > | getApInterfaceManager ()=0 |
virtual std::shared_ptr< IStaInterfaceManager > | getStaInterfaceManager ()=0 |
Static Public Member Functions | |
static WlanFactory & | getInstance () |
Protected Member Functions | |
WlanFactory () | |
virtual | ~WlanFactory () |
|
protected |
|
protectedvirtual |
|
static |
Get Wlan Factory instance.
|
pure virtual |
Get Wlan Device Manager
[in] | clientCallback | Optional callback to get the initialization status of WlanDeviceManager telux::common::InitResponseCb |
|
pure virtual |
Get Access Point Interface Manager
|
pure virtual |
Get Station Interface Manager
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
Station Interface Status
|
strong |
This applies in architectures where the modem is attached to an External Application Processor(EAP). An API that sets or configure Wlan can be invoked from the EAP or from the modems Internal Application Processor (IAP). This type specifies where the operation should be carried out.
Enumerator | |
---|---|
WLAN_LOCAL |
Perform the operation on the processor where the API is invoked. |
WLAN_REMOTE |
Perform the operation on the application processor other than where the API is invoked. |
|
strong |
|
strong |
|
strong |
|
strong |
|
strong |
|
pure virtual |
Checks the readiness status of wlan manager and returns the result.
|
pure virtual |
Enable or Disable Wlan Service. Configurations set by telux::wlan::IWlanDeviceManager::setMode must be completed before enabling Wlan. If any of configurations need to be changed after Wlan is enabled, this API must be called with enable set to false followed by a call with enable set to true for the new configurations to take effect. Calling this API with enable, will start hostapd and wpa_supplicant daemons. Further changes to hostapd and wpa_supplicant will require calling telux::wlan::IApInterfaceManager::manageApService and telux::wlan::IStaInterfaceManager::manageStaService respectively. Client shall wait for IWlanListener::onEnableChanged indication to confirm WLAN was enabled/disabled successfully
On platforms with Access control enabled, Caller needs to have TELUX_WLAN_DEVICE_CONFIG permission to invoke this API successfully.
[in] | enable | true : Enable Wlan, false: Disable Wlan. |
|
pure virtual |
Set Wlan mode - number of supported APs, and stations. This API shall be called when wlan is disabled. On enablement, wlan will enable APs and Stations set in this API.
[in] | numOfAp | Num of Access Points to be enabled. If no Access Point is enabled, this argument should be set to 0. Configuration of each AP is accomplished through telux::data::wlan::IApManager instance requested from factory. |
[in] | numOfSta | Num of Stations to be enabled. If no station is enabled, this argument should be set to 0. Configuration of each Station is accomplished through telux::data::wlan::IStaManager instance requested from factory. |
On platforms with Access control enabled, Caller needs to have TELUX_WLAN_DEVICE_CONFIG permission to invoke this API successfully.
|
pure virtual |
Request Wlan configuration: Returns the configuration that was set using telus::wlan::IWlanDeviceManager::setMode. This might differ from what configuration is has actually been enabled in the system, for instance, when the hardware cannot fully support the configuration that was set. To get the status of current configuration an Wlan enablement, telux::wlan::IWlanDeviceManager::getStatus should be used.
[in] | numAp | Num of configured APs |
[in] | numSta | Num of configured Stations |
|
pure virtual |
Request Wlan status: Return Wlan enablement status and Interface status of APs and Station such as active/inactive, network interface name and hardware device they are mapped to. Results are valid only if Wlan is enabled.
[in] | isEnabled | true: Wlan is enabled. false: Wlan is Disabled. |
[in] | status | vector of interface status InterfaceStatus. |
|
pure virtual |
Set the country in which the device is operating. The country code will be used to make the device operate using the regulatory parameters pertaining to the active country
On platforms with Access control enabled, Caller needs to have TELUX_WLAN_DEVICE_CONFIG permission to invoke this API successfully.
[in] | country | Active country code according to ISO 3166 standard |
|
pure virtual |
Request Regulatory Parameters
[out] | regulatoryParams | Current Regulatory Settings RegulatoryParams. |
|
pure virtual |
Set Transmit Power Immediately changes WLAN transmit power. The setting will not be persistent across power cycles. To restore default power associated with country set by telux::wlan::IWlanDeviceManager::setActiveCountry, either hostapd or wpa_supplicant daemons need to be restarted via telux::wlan::IApInterfaceManager::manageApService or telux::wlan::IStaInterfaceManager::manageStaService
[in] | txPower | Transmit Power to be set in mutiple of 100 milliwatts. For instance, if txPower equals 15, transmit power will be set to 1500 milliwatts. |
On platforms with Access control enabled, Caller needs to have TELUX_WLAN_DEVICE_CONFIG permission to invoke this API successfully.
|
pure virtual |
Request Transmit Power
[out] | txPowerMw | Current Transmit Power in mutiple of 100 milliwatts. |
|
pure virtual |
Register a listener for specific events in the Wlan Manager
[in] | listener | pointer of IWlanListener object that processes the notification |
|
pure virtual |
Removes a previously added listener.
[in] | listener | pointer of IWlanListener object that needs to be removed |
|
virtual |
Destructor for IWlanDeviceManager
|
virtual |
This function is called when service status changes.
[in] | status | - ServiceStatus |
|
virtual |
This function is called when temperature has crossed threshold
[in] | temperature | - current device temperature in Fahrenheit |
[in] | perfState | - current performance state of device due to device temperature |
|
virtual |
This function is called when Wlan enablement has changed
[in] | enable | True: Wlan is enabled, False: Wlan is disabled |
|
virtual |
HwDeviceType telux::wlan::InterfaceStatus::device |
std::vector<ApStatus> telux::wlan::InterfaceStatus::apStatus |
WiFi hardware type
Vector of active APs status
std::vector<StaStatus> telux::wlan::InterfaceStatus::staStatus |
Vector of active Sta status
std::string telux::wlan::RegulatoryParams::country |
Country code according to ISO 3166 standard
float telux::wlan::RegulatoryParams::opChannel |
Operating channel according to IEEE 802.11 Standards
std::vector<float> telux::wlan::RegulatoryParams::opClass |
Operating class according to IEEE 802.11 Standards
uint32_t telux::wlan::RegulatoryParams::txPowerMw |
Transmit power in multiple of 100 MilliWatts Actual transmit power = value set here * 100 milliwatts