36 lines
918 B
C++
36 lines
918 B
C++
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
// Licensed under the MIT License.
|
|
|
|
#pragma once
|
|
|
|
namespace CalculatorApp
|
|
{
|
|
public enum class NetworkAccessBehavior
|
|
{
|
|
Normal = 0,
|
|
OptIn = 1,
|
|
Offline = 2
|
|
};
|
|
|
|
public delegate void NetworkBehaviorChangedHandler(NetworkAccessBehavior behavior);
|
|
|
|
public ref class NetworkManager sealed
|
|
{
|
|
public:
|
|
NetworkManager();
|
|
|
|
static NetworkAccessBehavior GetNetworkAccessBehavior();
|
|
|
|
event NetworkBehaviorChangedHandler^ NetworkBehaviorChanged;
|
|
|
|
private:
|
|
~NetworkManager();
|
|
|
|
void OnNetworkStatusChange(_In_ Platform::Object^ sender);
|
|
static NetworkAccessBehavior ConvertCostInfoToBehavior(_In_ Windows::Networking::Connectivity::ConnectionCost^ connectionCost);
|
|
|
|
private:
|
|
Windows::Foundation::EventRegistrationToken m_NetworkStatusChangedToken;
|
|
};
|
|
}
|