AuroraRuntime/Source/IO/Net/AuNetAdapter.cpp
2023-12-01 13:26:44 +00:00

100 lines
1.8 KiB
C++

/***
Copyright (C) 2022 J Reece Wilson (a/k/a "Reece"). All rights reserved.
File: AuNetAdapter.cpp
Date: 2022-11-14
Author: Reece
***/
#include "Networking.hpp"
#include "AuNetAdapter.hpp"
#include "AuNetAdapter.hpp"
namespace Aurora::IO::Net
{
const AuString &NetAdapter::ToName()
{
return this->name.empty() ? this->device : this->name;
}
IPAddress NetAdapter::ToAddress()
{
AuMemory::GetDefaultDiscontiguousHeapShared()->NewClass<NetAdapter>();
return this->address;
}
IPAddress NetAdapter::ToBroadcastAddress()
{
return this->broadcast;
}
IPAddress NetAdapter::ToSubnetMask()
{
return this->subnet;
}
const AuString &NetAdapter::ToDevice()
{
return this->device;
}
ENetworkAdapterType NetAdapter::ToNetworkType()
{
return this->eNetworkType;
}
ENetworkAdapterStatus NetAdapter::ToStatus()
{
return this->eNetworkStatus;
}
EIPProtocol NetAdapter::ToFamily()
{
return this->address.ip;
}
AuUInt16 NetAdapter::GetIndex()
{
return this->index;
}
IPAddress NetAdapter::ToAnycastAddress()
{
return this->anycast;
}
IPAddress NetAdapter::ToGateway()
{
return this->gateway;
}
AuList<IPAddress> NetAdapter::GetDNS()
{
return this->dns;
}
AuArray<AuUInt8, 8> NetAdapter::ToMacAddress()
{
return this->mac;
}
bool NetAdapter::HasDHCP()
{
return this->dhcp;
}
AuUInt32 NetAdapter::GetMTU()
{
return this->mtu;
}
AuUInt64 NetAdapter::GetTransmitBytesPerSec()
{
return this->uTransmitBytesPerSec;
}
AuUInt64 NetAdapter::GetReceiveBytesPerSec()
{
return this->uReceiveBytesPerSec;
}
}