Alexa Auto SDK  2.0.0
NetworkInfoProvider.h
1 /*
2  * Copyright 2017-2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License").
5  * You may not use this file except in compliance with the License.
6  * A copy of the License is located at
7  *
8  * http://aws.amazon.com/apache2.0/
9  *
10  * or in the "license" file accompanying this file. This file is distributed
11  * on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
12  * express or implied. See the License for the specific language governing
13  * permissions and limitations under the License.
14  */
15 
16 #ifndef AACE_NETWORK_NETWORK_INFO_PROVIDER_H
17 #define AACE_NETWORK_NETWORK_INFO_PROVIDER_H
18 
19 #include <string>
20 #include <chrono>
21 
22 #include "AACE/Core/PlatformInterface.h"
23 #include "NetworkEngineInterfaces.h"
24 
27 namespace aace {
28 namespace network {
29 
34 protected:
35  NetworkInfoProvider() = default;
36 
37 public:
43 
44  virtual ~NetworkInfoProvider();
45 
51  virtual NetworkStatus getNetworkStatus() = 0;
52 
58  virtual int getWifiSignalStrength() = 0;
59 
66  void networkStatusChanged( NetworkStatus status, int wifiSignalStrength );
67 
74  void setEngineInterface( std::shared_ptr<NetworkInfoProviderEngineInterface> networkInfoProviderEngineInterface );
75 
76 private:
77  std::shared_ptr<NetworkInfoProviderEngineInterface> m_networkInfoProviderEngineInterface;
78 };
79 
80 } // aace::network
81 } // aace
82 
83 #endif // AACE_NETWORK_NETWORK_INFO_PROVIDER_H
Definition: PlatformInterface.h:29
NetworkStatus
Definition: NetworkEngineInterfaces.h:35
Definition: AddressBook.h:26
Definition: NetworkInfoProvider.h:33
virtual NetworkStatus getNetworkStatus()=0
void networkStatusChanged(NetworkStatus status, int wifiSignalStrength)
Definition: NetworkInfoProvider.cpp:23

Alexa Auto SDK 2.0.0 - Copyright 2017-2019 Amazon.com, Inc. or its affiliates. All Rights Reserved. Licensed under the Apache License, Version 2.0