All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
PIPSocket::InterfaceEntry Class Reference

Describe an interface table entry. More...

`#include <ipsock.h>`

Inheritance diagram for PIPSocket::InterfaceEntry:

## Public Member Functions

| InterfaceEntry ()
| Create an interface entry from a name, IP addr and MAC addr. More...
| InterfaceEntry (const PString &name, const Address &addr, const Address &mask, const PString &macAddr)
virtual void | PrintOn (ostream &strm) const
| Print to specified stream. More...
const PString & | GetName () const
| Get the name of the interface. More...
Address | GetAddress () const
| Get the address associated with the interface. More...
Address | GetNetMask () const
| Get the net mask associated with the interface. More...
const PString & | GetMACAddress () const
| Get the MAC address associate with the interface. More...
Public Member Functions inherited from PObject
virtual | ~PObject ()
virtual PObject * | Clone () const
| Create a copy of the class on the heap. More...
virtual PINDEX | HashFunction () const
| This function yields a hash value required by the `PDictionary` class. More...
virtual Comparison | Compare (const PObject &obj) const
| Compare the two objects and return their relative rank. More...
virtual Comparison | CompareObjectMemoryDirect (const PObject &obj) const
| Determine the byte wise comparison of two objects. More...
bool | operator== (const PObject &obj) const
| Compare the two objects. More...
bool | operator!= (const PObject &obj) const
| Compare the two objects. More...
bool | operator< (const PObject &obj) const
| Compare the two objects. More...
bool | operator> (const PObject &obj) const
| Compare the two objects. More...
bool | operator<= (const PObject &obj) const
| Compare the two objects. More...
bool | operator>= (const PObject &obj) const
| Compare the two objects. More...
virtual const char * | GetClass (unsigned ancestor=0) const
| Get the current dynamic type of the object instance. More...
PBoolean | IsClass (const char *cls) const
virtual PBoolean | InternalIsDescendant (const char *clsName) const
| Determine if the dynamic type of the current instance is a descendent of the specified class. More...
virtual void | ReadFrom (istream &strm)
| Input the contents of the object from the stream. More...

## Static Public Member Functions

static void | SanitiseName (PString &name)
| Sanitise a device name for use in PTLib. More...
Static Public Member Functions inherited from PObject
static Comparison | InternalCompareObjectMemoryDirect (const PObject *obj1, const PObject *obj2, PINDEX size)
| Internal function caled from CompareObjectMemoryDirect() More...
static const char * | Class ()
| Get the name of the class as a C string. More...

## Protected Attributes

PString | m_name
Address | m_ipAddress
Address | m_netMask
PString | m_macAddress

## Additional Inherited Members

Public Types inherited from PObject
enum | Comparison { LessThan = -1, EqualTo = 0, GreaterThan = 1 }
| Result of the comparison operation performed by the `Compare()` function. More...
Protected Member Functions inherited from PObject
| PObject ()
| Constructor for PObject, made protected so cannot ever create one on its own. More...

## Detailed Description

Describe an interface table entry.

## Constructor & Destructor Documentation

PIPSocket::InterfaceEntry::InterfaceEntry | ( |  | ) |

Create an interface entry from a name, IP addr and MAC addr.

PIPSocket::InterfaceEntry::InterfaceEntry | ( | const PString & | name,
|  | const Address & | addr,
|  | const Address & | mask,
|  | const PString & | macAddr
| ) |  |

## Member Function Documentation

Address PIPSocket::InterfaceEntry::GetAddress | ( |  | ) | const

inline

Get the address associated with the interface.

References m_ipAddress.

const PString& PIPSocket::InterfaceEntry::GetMACAddress | ( |  | ) | const

inline

Get the MAC address associate with the interface.

References m_macAddress.

const PString& PIPSocket::InterfaceEntry::GetName | ( |  | ) | const

inline

Get the name of the interface.

Note the name will havebeen sanitised of certain possible characters that can cause issues elsewhere in the system. Therefore, make sure that if you get a device name from some other source than the InterfaceEntry, the name is sanitised via PIPSocket::InterfaceEntry::SanitiseName() before comparing against the name returned here.

References m_name.

Address PIPSocket::InterfaceEntry::GetNetMask | ( |  | ) | const

inline

Get the net mask associated with the interface.

References m_netMask.

virtual void PIPSocket::InterfaceEntry::PrintOn | ( | ostream & | strm | ) | const

virtual

Print to specified stream.

Reimplemented from PObject.

static void PIPSocket::InterfaceEntry::SanitiseName | ( | PString & | name | ) |

static

Sanitise a device name for use in PTLib.

## Member Data Documentation

Address PIPSocket::InterfaceEntry::m_ipAddress

protected

Referenced by GetAddress().

PString PIPSocket::InterfaceEntry::m_macAddress

protected

Referenced by GetMACAddress().

PString PIPSocket::InterfaceEntry::m_name

protected

Referenced by GetName().

Address PIPSocket::InterfaceEntry::m_netMask

protected

Referenced by GetNetMask().

The documentation for this class was generated from the following file:

- ipsock.h