CoreComponents 3.0.0
A Modern C++ Toolkit
Loading...
Searching...
No Matches
NetworkInterface Class Reference

Query network interface configuration: assigned addresses, flags, etc. More...

#include <cc/NetworkInterface>

Inheritance diagram for NetworkInterface:

Public Member Functions

 NetworkInterface ()=default
 Create an invalid NetworkInterface.
 
String name () const
 System name of the network interface
 
int index () const
 System index of the network interface
 
unsigned type () const
 Network interface face type.
 
NetworkInterfaceFlags flags () const
 Network interface flags.
 
String hardwareAddress () const
 Hardware address.
 
uint32_t mtu () const
 Message transfer unit (MTU)
 
List< NetworkLabellabels () const
 Network addresses currently assigned to this interface.
 
- Public Member Functions inherited from Object
 Object ()=default
 Create a null object.
 
 operator bool () const
 Check if this is a non-null object.
 
bool isNull () const
 Check if this is a null object.
 
template<class T >
bool is () const
 Check if this object is of type T.
 
template<class T >
as () const
 Cast this object to type T.
 
bool isWeak () const
 Check if the underlying object reference is weak.
 
bool operator== (const Object &other) const
 Equality operator.
 
std::strong_ordering operator<=> (const Object &other) const
 Ordering operator.
 
long useCount () const
 Reference count.
 

Static Public Member Functions

static NetworkInterface query (const String &name, ProtocolFamily family=ProtocolFamily::Unspec)
 Query information about a certain network interface.
 
static List< NetworkInterfacequeryAll (ProtocolFamily family=ProtocolFamily::Unspec)
 Query information about all available network interfaces.
 

Additional Inherited Members

- Protected Member Functions inherited from Object
template<class T >
weak () const
 
template<class T >
void initOnce ()
 Create the object state when called the first time.
 
template<class T >
void initOncePerThread ()
 Create a distinct object state for each thread when called the first time in that thread.
 
 Object (State *newState)
 Initialize object with newState.
 
 Object (State *state, Alias)
 
 Object (State *state, Weak)
 
Objectoperator= (std::nullptr_t)
 
- Static Protected Member Functions inherited from Object
template<class T >
static T alias (const State *state)
 Create an alias object for the given state.
 
template<class T >
static T weak (const State *state)
 
- Protected Attributes inherited from Object
Handle< Stateme
 Internal object state
 

Detailed Description

Query network interface configuration: assigned addresses, flags, etc.

Constructor & Destructor Documentation

◆ NetworkInterface()

NetworkInterface ( )
default

Create an invalid NetworkInterface.

Member Function Documentation

◆ query()

NetworkInterface query ( const String & name,
ProtocolFamily family = ProtocolFamily::Unspec )
static

Query information about a certain network interface.

Parameters
namesystem name of the interface
familylimit the addressList() to a certain protocol family (e.g. AF_INET)
Returns
new object instance

◆ queryAll()

Query information about all available network interfaces.

Parameters
familyLimit the addressList() to a certain protocol family (e.g. AF_INET)
Returns

◆ name()

String name ( ) const

System name of the network interface

◆ index()

int index ( ) const

System index of the network interface

◆ type()

unsigned type ( ) const

Network interface face type.

◆ flags()

NetworkInterfaceFlags flags ( ) const

Network interface flags.

◆ hardwareAddress()

String hardwareAddress ( ) const

Hardware address.

◆ mtu()

uint32_t mtu ( ) const

Message transfer unit (MTU)

◆ labels()

List< NetworkLabel > labels ( ) const

Network addresses currently assigned to this interface.